我从here阅读了教程,但我不明白为什么第二个“insertOne”不起作用。感谢帮助!

var Promise=require('promise');
var MongoClient=require('mongodb').MongoClient;
var url = 'mongodb://localhost/EmployeeDB';
MongoClient.connect(url)
    .then(function(db)
{
    db.collection('Documents').insertOne({
        Employeeid: 1,
        Employee_Name: "Petro"})
        .then(function(db1) {
            db1.collection('Documents').insertOne({
                Employeeid: 2,
                Employee_Name: "Petra"})
        })
        db.close();
    });

最佳答案

您正在执行两个异步操作(db.insertOne)。

因此,在第二个insertOne之后,您应该输入一个.then并关闭您的连接

代码应如下所示

{
    db.collection('Documents').insertOne({
        Employeeid: 1,
        Employee_Name: "Petro"})
        .then(function(db1) {
            db1.collection('Documents').insertOne({
                Employeeid: 2,
                Employee_Name: "Petra"})
        }).then(function(db2) {
              db.close();
        })
    });

关于javascript - 嵌套的Promise Node js,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37196431/

10-10 00:35