木偶 - 从控制器触发动作

时间:2015-05-26 10:44:33

标签: javascript backbone.js marionette

我试图了解Marionette中路由器和控制器背后的所有逻辑。正如您在下面看到的,每个示例都使用不同的方法来处理触发动作机制,因此我很难确定应该使用哪种方法。

  1. example - link - 这个呈现来自APpController的视图
  2. 示例 - link - 使用Marionette.EventAggregator
  3. example - link - 使用App实例触发所有操作。
  4. 还值得一提的是,他们中的大多数都是2-3岁,因此我问自己是否在我的应用中使用它们。

    我在Marionette.AppRouter个实例中创建了一个基本Marionette.ControlleMarionette.Application r。我的AppRouter模块中的所有已定义路由都正常工作。因此,一旦“#home”路由被触发,我想进一步更新我的一个观点。但我无法这样做,因为在阅读完所有文档之后,我仍然不清楚如何更新AppController的所有观点?

    1. 我应该使用EventAggregator进行AppControllerMarionette.Applicaiton之间的所有通信吗?

    2. 我应该在LayoutView中定义ItemViews包括AppController ..等?

    3. 或者我应该将我的应用实例传递给AppController

    4. 如果有人向我指出一个简单的,最新的(AMD)示例,我会很高兴的。

1 个答案:

答案 0 :(得分:0)

最新的方式是Backbone.Radio。它将成为Marionette下一个大版本的默认事件管理器。您可以shim it使用最新版本并立即使用它。

就个人而言,我决定将Radio与定制路由器一起使用。关于如何组织所有内容存在相互矛盾的意见,但我将无线电和路由器都保留在Marionette.Application(window.radio,window.router,window.app)的范围之外。它运作良好,可以是另一个可行的选择。