Node.js Mongoose find()。或挂起

Node.js Mongoose find()。或挂起,node.js,mongodb,mongoose,Node.js,Mongodb,Mongoose,mongodb的新成员。我正在尝试进行多字段搜索查询。当我运行下面的代码时,它会根据关键字正确返回结果 var re = new RegExp(req.query.keyword, 'i'); Company.find({ 'name': { $regex: re }}, function (err, company) { if (err) return next(err); res.send(company); }) 但是,当我尝试使用find()或

mongodb的新成员。我正在尝试进行多字段搜索查询。当我运行下面的代码时,它会根据关键字正确返回结果

var re = new RegExp(req.query.keyword, 'i');
Company.find({ 'name': { $regex: re }}, 
    function (err, company) {
        if (err) return next(err);
        res.send(company);
})
但是,当我尝试使用
find()或
使用此代码时,我的API只是挂起,然后超时,没有错误

var re = new RegExp(req.query.keyword, 'i');
Company.find().or([{ 'name': { $regex: re }}, { 'url': { $regex: re }}], 
    function (err, company) {
        if (err) return next(err);
        res.send(company);
})
有什么想法吗?谢谢

不将回调函数作为参数,因此必须调用以执行查询

Company.find()
    .or([{ 'name': { $regex: re }}, { 'url': { $regex: re }}])
    .exec(function (err, company) {
        if (err) return next(err);
        res.send(company);
    })