如何在Nodejs mocha中声明一个全局数组?

三位一体

我想声明一个数组来存储来自数据库的数据。我可以在控制台上成功看到结果。结果是保存数据库数据。我想将结果分配给一个数组,但是当我这样做时它变成了空。什么是正确的方法?

describe("Test", function () {

    it("Should Update Particular Post Only", (done) => {

        global.postsFromDb = [];//should be filled with db data. 
         chai.request(server)
            .get("/posts")
            .end((err, result) => {
                global.postsFromDb = result.body.slice(); // Doesn't fill global array 
                done();
            })

        console.log( global.postsFromDb);


        var updatedPost = {
            "_id": global.postsFromDb[1]._id,
            "title": "Updated From Test"
        }

        chai.request(server)
            .patch("/posts" + updatedPost)
            .send(updatedPost)
            .end((err, result) => {
                result.should.have.status(200)
                console.log("Updated Particlar Todo Post using / Object ::::", result.body)
                done();
            })
        done();

    })        
})
圣曼诺

您的“console.log”行在发出实际 Web 请求之前执行,因此它会记录您在其中初始化的空值

global.postsFromDb = [];//should be filled with db data.

在此处阅读异步 Javascript 的细微差别

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

关于如何为lwip堆栈中声明的一个全局数组计算大小的困惑

我如何先在C中声明一个全局数组,然后再初始化它的大小?

如何访问在另一个函数中异步创建的全局数据数组?

如何以形式声明全局数组?

如何从Flutter中的另一个类访问全局数据?

如何在nodejs中返回一个数组

如何在反应中创建全局数组?当我对每个索引进行单独的操作时,我希望它们将它们保存在一个数组中

如何在Swift中创建全局数组并在两个TableView中保存值

如何故障恢复到Amazon Aurora全局数据库中的第一个区域

如何在Swift 4中访问全局数组?

如何在TypeScript中声明一个将映射到环境定义的全局属性的Enum?

如何在 RealmSwift 中声明一个二维数组

如何在C中声明一个可变大小的数组?

如何在 C++ 中声明一个通过引用将数组作为参数的函数?

如何在C中声明一个元素数组

如何在TypeScript中声明一个只读数组元组?

如何在React中声明一个二维数组?

Perl struct如何在struct中声明一个struct数组

如何声明一个对象数组

在DB2中,如何声明一个变量以在函数中的多个已声明的全局临时表中使用。

如何声明在类型别名中声明的仅一个别名的数组

如何防止在 Julia 的模块中迭代使用全局数组?

如何在 Mongodb 的 NodeJs 中将 3 个单独的数组变成一个数组

如何在nodeJS中循环JSON数组

如何在NodeJS中迭代大型数组

如何在NodeJS中展开对象数组?

如何在 PHP 的函数中本地使用全局数组中的值?

你如何在 Denodo 中声明一个变量?

如何在C ++中声明一个类