我正在尝试从我的服务器(node.js)获取一个 mongodb 集合,并使用主干在模板上呈现此内容(下划线)。Mongodb 和 node.js 部分工作正常,因为我证明用集合做了一个 console.log,它给我带来了集合。我有下面的代码(我删掉了一些不相关的代码部分):
路由器.js
appRouter.on('route:books', function () {
var bookList = new BookCollection();
bookList.fetch({
success: function () {
$('#content').html(new BookListView( { model: bookList } ).el);
}
});
});
bookListView.js
, render: function () {
var books = this.model.models;
$(this.el).html(this.template());
_.each(this.model.models, function(book) {
$('.thumbnails', this.el).append(new BookListItemView( { model: book } ).render().el);
}, this);
}
bookListItemView.js
, render: function () {
$(this.el).html(this.template(this.model.toJSON()));
return this;
}
我的问题是this.model.models = undefined,我不明白为什么在相同的代码完美运行之前 5 分钟。如果我做 console.log(this.model) 它会给我带来模型列表。
我的代码灵感来自 Christophe Coenraets的那个 repo https://github.com/ccoenraets/nodecellar
希望您的帮助,谢谢,问候