0

我在我的收藏中使用 this.isNew 时遇到问题,它看起来如下所示:

window.MyModel = Backbone.Model.extend({
    idAttribute: "_id",
});

window.MyModelList = Backbone.Collection.extend({
    alert('Collection');
    model: MyModel,
    url: function() {
        if (this.isNew()) {
           alert('show all');
           // will ask the server to show all items
           return 'api/site/showall'
    } else {
        alert('create new item');
        // will ask the server to create new item
        return 'api/site/new'
    }
});

它提醒“集合”而不是“显示全部”和“创建新项目”然后我收到错误“TypeError:this.isNew is not a function”

谢谢,

4

1 回答 1

3

这是真的 - 集合没有 isNew() 函数,只有模型有 -

http://backbonejs.org/#Model-isNew

如果您的目标是确定模型是否已经在集合中,请考虑使用 Underscore 的 Find 功能

http://documentcloud.github.com/underscore/#find

于 2012-09-25T13:36:47.033 回答