0

我使用 localStorage 来保存我的 Backbone 应用程序的数据。但是每次我this.collection.fetch()用来获取数据时,我都想先过滤它们,然后只使用部分数据来渲染我的视图。我尝试使用 ajaxdata选项fetch来过滤数据,但它不起作用。有人可以给我一些想法吗?

4

1 回答 1

1

当然你可以过滤数据。有多种方法可以做到这一点,因此您需要通过过滤数据更好地解释您的意思。假设一切正常,并且在您解析所有有效模型之后,fetch我建议您render()在集合视图的方法中过滤数据。像这样简单的东西可能会起作用:

render: function() {
  this.collection.each(function(model) {
      if(model.something > somethingElse) {
         // render the model
         ...
      }
  })
},

如果您的意思是您不希望所有获取的数据成为集合的一部分,那么您将需要覆盖集合解析方法。它传递来自本地存储的原始数据,您需要返回集合数据。看这里

于 2012-05-02T05:49:51.153 回答