在TodoMVC中为Backbone Marionette示例做出设计决策

时间:2013-05-18 13:43:07

标签: javascript backbone.js marionette todomvc

我想知道为什么在TodoMVC Backbone Marionette中,Marionette.Layout用于Footer而不是像ItemView这样的简单Header

另外,为什么使用CompositeView代替TodoList.Views.ListView代替CollectionView

1 个答案:

答案 0 :(得分:4)

我认为没有必要在页脚中使用Layout。我认为作者认为他可能需要在页脚中添加一些区域并使用Layout,但在实际实现中?没必要。

关于CompositeView而不是CollectionViewCollectionView不允许您在其上设置模板。

想象一下,你需要显示一个客户列表,但你不希望一个简单的<ul>显示客户端,你想要一些标题,一些信息然后<ul>所以{{1}您可以添加一个模板,该模板可以包含该标题,信息,当然还有CompositeView

在这个具体案例中,他希望显示一个带有列表的复选框,因此除了<ul>之外他需要显示额外的标记,他需要<ul>才能添加模板。

TL; DR 如果您不需要额外标记,请使用CompositeView,如果需要,请使用CollectionView