我想知道为什么在TodoMVC Backbone Marionette中,Marionette.Layout
用于Footer
而不是像ItemView
这样的简单Header
?
另外,为什么使用CompositeView
代替TodoList.Views.ListView
代替CollectionView
?
答案 0 :(得分:4)
我认为没有必要在页脚中使用Layout
。我认为作者认为他可能需要在页脚中添加一些区域并使用Layout
,但在实际实现中?没必要。
关于CompositeView
而不是CollectionView
。 CollectionView
不允许您在其上设置模板。
想象一下,你需要显示一个客户列表,但你不希望一个简单的<ul>
显示客户端,你想要一些标题,一些信息然后<ul>
所以{{1}您可以添加一个模板,该模板可以包含该标题,信息,当然还有CompositeView
。
在这个具体案例中,他希望显示一个带有列表的复选框,因此除了<ul>
之外他需要显示额外的标记,他需要<ul>
才能添加模板。
TL; DR 如果您不需要额外标记,请使用CompositeView
,如果需要,请使用CollectionView