我刚用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!")});
}
});
答案 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