如何filter/modify backbone collection本身,得不到新数组
How to filter/modify backbone collection itself, not get a new array
我想在 Collection 上过滤或 运行 其他功能,但更改保留在 collection 中,而不是取回新数组。
例如:
在我的 Collection 中,我有一些方法,例如:
approved: ->
filtered = @filter((model) ->
model.get("status") is "approved"
)
return filtered
getSubcategories: (obj) ->
...
在我的视图中,有时我可能需要批准的模型列表,然后稍后我想要 运行 getSubcategories 方法。但是现在使用这些方法我只会取回一个新数组。
如何在视图中修改我的 Collection 而不取回我无法再 运行 其他 collection 方法的新数组?
您可以 return 集合的新实例,为其提供经过过滤的模型数组
approved: ->
filtered = @filter((model) ->
model.get("status") is "approved"
)
new Example.Collection(filtered)
我想在 Collection 上过滤或 运行 其他功能,但更改保留在 collection 中,而不是取回新数组。
例如:
在我的 Collection 中,我有一些方法,例如:
approved: ->
filtered = @filter((model) ->
model.get("status") is "approved"
)
return filtered
getSubcategories: (obj) ->
...
在我的视图中,有时我可能需要批准的模型列表,然后稍后我想要 运行 getSubcategories 方法。但是现在使用这些方法我只会取回一个新数组。
如何在视图中修改我的 Collection 而不取回我无法再 运行 其他 collection 方法的新数组?
您可以 return 集合的新实例,为其提供经过过滤的模型数组
approved: ->
filtered = @filter((model) ->
model.get("status") is "approved"
)
new Example.Collection(filtered)