我是Node.js的初学者,最近我尝试分析以下代码:http://howtonode.org/express-mongodb。但是我卡住了。我真的不明白这段代码是如何工作的:
    articleProvider.findAll(function(error,docs){
      res.send(docs);
    });

此方法调用如下的findAll函数:
    var articleCounter = 1;
    ArticleProvider = function(){};
    ArticleProvider.prototype.dummyData = [];

ArticleProvider.prototype.findAll = **function(callback) {
 callback( null, this.dummyData )
};**


怎么用一个甚至没有声明的函数回调来调用findAll方法?感谢您的帮助

最佳答案

以下代码段:

ArticleProvider.prototype.findAll = function(callback)
...


声明ArticleProvider.findAll为本身以参数命名的函数callback。调用ArticleProvider.findall(foo)时,将使用两个参数来调用函数foonull作为第一个参数,而ArticleProvider.dummyData作为第二个参数。

最好从一本好的Javascript书籍开始,例如Crockford书籍。祝好运。

[编辑]

我在以下回复之一中看到了使用猫鼬的建议,但是在使用它之后,我现在更喜欢Guillermo Rauch的Monk。它比Mongoose简单得多,它使您无需模式即可工作。对于那些只需要在MongoDB上放置一个简单层的情况,Monk帮了我大忙。

关于node.js - Express和mongodb文章,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16703588/

10-11 10:22