使用Node.js获取Ajax获取失败

时间:2019-06-04 08:31:03

标签: javascript jquery node.js ajax

`我想发送一个ajax获取请求到nodejs。 (index.ejs -1.img) https://ibb.co/Hr61MDT

然后我将请求保存在一个nodejs文件中(index.js -2.img) https://ibb.co/TR3W3N8 但是就在这里

var limit=req.query.limit;
var start=req.query.start;

console.log(req.query);



Model.find({}, function (err, data) { 
res.render('index', { Bedirhan: data });
}).sort({ _id: -1 }).skip(start).limit(limit);

// skip(开始).limit(限制); //开始和限制不起作用 当我们看终端(3.img)

https://ibb.co/749s8vP

{ limit: '8', start: '0', _: '1559636568728' }这很好,但是

Model.find({}, function (err, data) { 
res.render('index', { Bedirhan: data });
}).sort({ _id: -1 }).skip(start).limit(limit);

此代码为什么不起作用

2 个答案:

答案 0 :(得分:0)

您需要在exec函数中进行回调

Model.find().sort({ _id: -1 }).skip(start).limit(limit).exec( function (err, data) { 
     res.render('index', { Bedirhan: data });
});

答案 1 :(得分:0)

尝试一下:

Model.find({}, null, { skip: start, limit: limit, sort: { _id: -1 } }, function (err, data) { 
  res.render('index', { Bedirhan: data });
});

您还应该处理错误:

Model.find({}, null, { skip: start, limit: limit, sort: { _id: -1 } }, function (err, data) { 
  if(err) {
      //console.log(err) Your error handle
  } else {
    res.render('index', { Bedirhan: data });

  }
});

使用承诺:

Model.find({})
    .skip(start)
    .limit(limit)
    .sort({ _id: -1 })
    .then(data => {
        res.render('index', { Bedirhan: data });
    })
    .catch(err => {
        //console.log(err) your error handle
    });