检查如果集合是backbonejs
问题描述:
我开发与requirejs和backbonejs这涉及到从数据库表中读取记录,并将它们显示一个网页应用空。我正在点击一个按钮。我想我是不必要地通过点击一个按钮从服务器获取模型。检查如果集合是backbonejs
我要的是,一旦我取集合模型上它不应该在按钮的第二点击再次读取。我对收集进行的任何修改/添加都与服务器验证有关,因此我将能够保留最新的列表,而无需再次从该服务器上单击该按钮时获取所有模型。
,所以我需要检查,如果集合为空或不取的模型前。这样的事情:
if(window.invoices.isEmpty())
{
window.invoices.fetch({success:function(model){
model.each(self.addOne,self);
}});
}
else
{
window.invoices.each(self.addOne,self);
}
如果我在这里出现根本错误,请摆脱一些光。
答
可以使用length
方法。
window.invoices.length == 0
不过我有点不确定你正在尝试与model.each(self.addOne, self)
做。当您获取集合时,Backbone将从返回的JSON创建模型并为您填充集合。
此代码添加表中的行。可以用isEmpty()函数来达到目的吗? – beNerd 2013-02-25 08:37:25
isEmpty也可以使用,但这是一个下划线方法,而长度是一种收集方法。它可能在下面的骨干使用isEmpty(),但我认为'window.invoices.length == 0'远远好于'_.isEmpty(window.invoice.length)' – neebz 2013-02-25 10:11:12