async await node.js 跳过第二个 await 语句 save mongodb
async await node.js skips the second await statement save mongodb
我在 node.js ES6 中使用 await async ...
async insertIngot(body, callback) {
console.log('*** ItemsRepository.insertIngot');
console.log(body);
const data = await this.getItemsTest();
console.log('*** getItems ok');
items = data.items;
let item = new Ingot();
item.ingotName = body.ingotName;
item.formulaName = body.formulaName;
item.items = items;
await item.save();
return item;
}
第一个 await 工作,然后它跳过其余代码并抛出错误:
(node:16612) DeprecationWarning: Mongoose: mpromise(mongoose 的默认 promise 库)已被弃用,请插入您自己的 promise 库:http://mongoosejs.com/docs/promises.html
在 mongoose 中,您需要定义要使用的承诺类型。您正在使用内置的 es6 承诺,所以要告诉猫鼬,您需要这样做:
mongoose.Promise = global.Promise;
这是文档:http://mongoosejs.com/docs/promises.html#plugging-in-your-own-promises-library
我在 node.js ES6 中使用 await async ...
async insertIngot(body, callback) {
console.log('*** ItemsRepository.insertIngot');
console.log(body);
const data = await this.getItemsTest();
console.log('*** getItems ok');
items = data.items;
let item = new Ingot();
item.ingotName = body.ingotName;
item.formulaName = body.formulaName;
item.items = items;
await item.save();
return item;
}
第一个 await 工作,然后它跳过其余代码并抛出错误:
(node:16612) DeprecationWarning: Mongoose: mpromise(mongoose 的默认 promise 库)已被弃用,请插入您自己的 promise 库:http://mongoosejs.com/docs/promises.html
在 mongoose 中,您需要定义要使用的承诺类型。您正在使用内置的 es6 承诺,所以要告诉猫鼬,您需要这样做:
mongoose.Promise = global.Promise;
这是文档:http://mongoosejs.com/docs/promises.html#plugging-in-your-own-promises-library