具体以源码为准git
Talent继承自Marionette继承自BackBonegithub
Region:数组
继承自Backbone.Event,show(view)会调用view.render(),而后$el.append(view.el),触发相应的事件app
Layout:dom
继承自 ItemView,能够设置regions属性ui
CompositeView:设计
继承自collectionView,将Item添加到template中代理
'itemview:deleteItem'事件code
CollectionView:
继承自ItemView,将Item直接添加到$el中
ItemView:
_deleteItem 自定义方法
继承自View
inilialize:(options)接受options
templateHelpers 赋值options的方式能够将collectionView,compositeView传过来的model合并到 itemview的model
collection:
where方法返回值是model数组而不是collection
避免 **-view-2.js的命名方式,而用**-view2.js(没法准确找到文件,多是require的bug)
循环依赖是设计问题,应该打破循环,好比把另外一个view A做为参数传到view B
backbone经过事件代理绑定事件,阻止事件冒泡便可防止事件在树形结构的dom中触发屡次