gpt4 book ai didi

backbone.js - 何时使用 Backbone.View 与 Backbone.Marionette.ItemView?

转载 作者:行者123 更新时间:2023-12-04 16:35:05 28 4
gpt4 key购买 nike

我正在第一次尝试使用 Backbone.Marionette,并想知道当一个简单的 Backbone.View 就足够了时,是否有任何理由使用 Backbone.Marionette.ItemView?

谢谢!

最佳答案

Marionette 的 ItemView 提供了一个默认的 renderclose为您做一些事情的方法。
render执行以下操作(除其他外):

1) 将 View 标记为 !this.isClosed(与在 Regions 中显示 View 有关,另一个 Marionette 概念)

2) 在渲染事件之前和之后触发

3) 调用serializeData获取数据的方法(默认为来自 this.modelthis.collection 的数据。

4) 获取模板(可能来自 TemplateCache)并通过 Marionette.Renderer 进行渲染

5) 绑定(bind) UI 元素

除了这个“免费”render方法,您还可以获得关闭的功能。

当然,如果您使用的是 CollectionView/ItemView 组合(非常强大)或 CompositeView/ItemView,则必须使用 ItemView。

在这些情况之外,一大好处是您知道您的 View 将与 Marionette Regions 兼容。理想情况下,在 Marionette 应用程序中,您使用单独的区域来显示您的 View ,如下所示:

var myView = new MyView();

// render and display the view
MyApp.mainRegion.show(myView);

// closes the current view
MyApp.mainRegion.close();

如果 MyView是一个 Marionette ItemView,这将像一个魅力。如果它只是一个原始的主干 View ,您可能需要做一些工作以确保它按计划工作。

在我的应用程序中,我通常只选择使用 ItemView 作为我所有非集合和非复合 View 的基础。

关于backbone.js - 何时使用 Backbone.View 与 Backbone.Marionette.ItemView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15348215/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com