Step和Mongodb驱动程序@Nodejs

时间:2012-03-28 14:32:57

标签: node.js mongodb

Step(
                function findFilters() {
                    database.connection.collection("diary_filter").find(this);
                },
                function loopFilters(error, cursor) {
                    var group = this.group();
                    cursor.each(group());
                },
                function testFilters(err, filters) { 
                    console.log("here we are", filters.length);
                }
            );

测试过滤器接收长度为1的数组,即使有n个过滤器。关于我做错什么的任何想法?或者有关如何更好地处理异步代码的任何建议?

2 个答案:

答案 0 :(得分:0)

这可以解决这个问题吗?

Step(
    function findFilters() {
        database.connection.collection("diary_filter").find().toArray(this);
    },
    function testFilters(err, filters) { 
        console.log("here we are", filters.length);
    }
);

答案 1 :(得分:-1)

这将永远不会起作用,因为步骤不会正确地进行交互,并且它不应该以这种方式使用。

重写它不使用step和toArray,因为你无论如何都要撤回所有项目

database.connection.collection("diary_filter").find().toArray(function(err, items) {});