【发布时间】:2015-11-20 13:44:21
【问题描述】:
我有一个嵌套的复合视图,它检查它的模型是否有一个集合,如果是,则将该集合设置为它自己的集合。
onRender: ->
if model.attributes.has_collection
@collection = model.get 'myCollection'
当模型有一个集合并且项目视图全部显示时,这非常有效,当我向集合中添加一个新模型时,会出现一个新视图。
但是当没有collection,点击按钮新建model时,我需要创建model,将collection(一个集合)设置为view的model,获取view展示model以及添加的任何其他模型。我尝试了各种方法,现在我在模型上设置了集合,然后运行这个函数:
class List.myCompositeView
childView: myView
// *** //
setChildren: ->
@collection = @model.get 'myCollection'
@render()
第一个模型按原样显示,但不显示创建的其他模型。重复一遍,当集合在 onRender 函数中设置时,它们确实会出现。我意识到有很多我没有在这里添加的代码,所以如果有一些(可能)与你需要知道的问题相关的东西,请告诉我。可能是视图没有正确绑定到集合的事件吗?谢谢!
【问题讨论】:
标签: backbone.js marionette composite-view