Express Mongoose ORM异步等待
任何人都可以帮助我如何使用异步和等待功能管理此代码。我的要求是插入100个数据,然后断开mongo数据库。Express Mongoose ORM异步等待,express,mongoose,mongoose-schema,Express,Mongoose,Mongoose Schema,任何人都可以帮助我如何使用异步和等待功能管理此代码。我的要求是插入100个数据,然后断开mongo数据库。 var faker = require('faker'); var mongoose = require('mongoose'); mongoose.connect('mongodb://localhost:27017/shopping'); mongoose.Promise = global.Promise; var Product = require('
var faker = require('faker');
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost:27017/shopping');
mongoose.Promise = global.Promise;
var Product = require('../models/product');
async function insertDocument(){
for(var i=0;i<=100;i++){
try{
var product = new Product({
imagePath:faker.image.image(),
title:faker.commerce.productName(),
description:faker.lorem.paragraph(),
price:faker.commerce.price()
});
product.save();
}catch (err) {
console.log(err);
}
}
}
insertDocument().then(function () {
// mongoose.disconnect();
});
var faker=require('faker');
var mongoose=require('mongoose');
猫鼬mongodb://localhost:27017/shopping');
mongoose.Promise=global.Promise;
var Product=require(“../models/Product”);
异步函数insertDocument(){
for(var i=0;iproduct.save()
返回承诺。如果要连续插入100个文档(一个接一个),请使用wait
。如果要并行插入100个文档,则不需要async
,而应使用promise.all
顺序的
异步函数insertDocument(){
对于(var i=0;i
async function insertDocument(){
for(var i=0;i<=100;i++){
try{
var product = new Product({
imagePath:faker.image.image(),
title:faker.commerce.productName(),
description:faker.lorem.paragraph(),
price:faker.commerce.price()
});
await product.save();
}catch (err) {
console.log(err);
}
}
}
function insertDocument(){
let promises = [];
for(var i=0;i<=100;i++){
var product = new Product({
imagePath:faker.image.image(),
title:faker.commerce.productName(),
description:faker.lorem.paragraph(),
price:faker.commerce.price()
});
promises.push(product.save());
}
return Promise.all(promises);
}