版本2.x有许多不同类型的视图:View,ItemView, LayoutView,CollectionView,CompositeView。
在版本3 ItemView中,LayoutView被“合并”到View中,并且 不推荐使用CompositeView以便在v4中删除。现在我们只有View 和CollectionView。
在木偶2中ItemView和View之间有什么区别?
如果我在Marionette 3的代码中将所有ItemView替换为View?我怎么会遇到问题?
答案 0 :(得分:2)
在木偶2中,ItemView和View之间有什么区别?
好的,在旧版Marionette中,我们使用特定的类名创建了所选的实例视图。
所以。如果你想创建 itemView ,你应该使用 ItemView 类,或者如果你想要布局视图实例,你可以使用 LayoutView类 。每个视图类都继承自基本的视图类,因此每个视图都有共同的属性,但不是全部。·
因此ItemView是View的一个特例。在M2中,不建议使用View类
在Marionette 3中,您不必指出特定的课程,因为查看课程 是一个更详细的。根据定义的属性,您的视图可以是itemView或layoutView
var view = new Marionette.View({ template: "#some-template"}); //So we can say that is a normal itemView
var layoutView = new Marionette.View({ template: "#some-template", regions: { menu: "#menu", content: "#content" }); //So we can say that now is a layoutView, because we defined a regions.
当然,CollectionView拥有与之前版本相同的类。
如果我在Marionette 3的代码中将所有ItemView替换为View?我怎么会遇到问题?
不,在这种情况下,你不应该有任何问题。