我正在使用 requirejs 和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 创建模型并为您填充集合。
关于jquery - 检查backbonejs中集合是否为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15061965/