mongoosastic fire" TypeError:doc.execPopulate(...)。那么它不是一个函数"

时间:2016-07-28 15:13:56

标签: node.js mongoose mongoosastic

我刚用npm update更新了我的套餐。在我对我的项目进行测试后,错误:

TypeError: doc.execPopulate(...).then is not a function
    at model.postSave (/myHome/myNodeJsServer/node_modules/mongoosastic/lib/mongoosastic.js:620:28)

被解雇了。

错误发生在MyModel.save();

我现在能做什么?

更新:

我的真实代码:

 global.DBModel.store.findOne({Email: data.Email}, function (err, store) {
            if (err)
                return cb({err: {status: 500, error: err}});
            if (!store) {
                delete data.isConfirm;
                delete data.isBlocked;
                if (data.geo_with_lat_lon && data.geo_with_lat_lon.lat && data.geo_with_lat_lon.lon) {
                    var lat = parseFloat(data.geo_with_lat_lon.lat);
                    var lon = parseFloat(data.geo_with_lat_lon.lon);
                    data.geo_with_lat_lon = {lon: lon, lat: lat};
                }
                var store = new global.DBModel.store(data);
                store.save(cb); //Here fire the error
            } else {
                return cb({status: 409, error: new Error("User exist!")});
            }
        });

2 个答案:

答案 0 :(得分:0)

你能试试吗

return  store.save(cb);

 store.save(cb);
 next();

答案 1 :(得分:0)

问题在于我对旧版本使用了很多东西。一切都已更新,但在package.json中,旧版本已修复。

npm install mongoosastic@4.0.2 --save解决了问题。

或者:

npm install -g npm-check-updates
npm-check-updates -u
npm install