Lor*_*o B 1 javascript publish-subscribe backbone.js marionette
我对这个世界很陌生,所以我需要对它进行一些澄清.也许我在这个问题上可能是错的.所以,随时纠正我.
我正在研究Marionette和Backbone如何协同工作.哦耶.Marionette为我们提供了Backbone的扩展.非常好的东西.
对我来说不明显的是何时使用Backbone提供的路由机制以及何时使用Marionette的发布者/订阅者模式.
有经验法则吗?
在这里,何处使用骨干牵线木偶中的事件聚合器?,类似的讨论,但没有关于如何使用这个或其他的建议.
我对Marionette的书的免费预览中解释了我对路线管理的看法(http://samples.leanpub.com/marionette-gentle-introduction-sample.pdf)
基本上,我的意见(其他人不一定分享它)是当用户通过URL"输入"应用程序时,应使用Backbone的路由来配置应用程序状态.换句话说,它将解析参数,并调用适当的控制器操作.
但是一旦设置了初始状态,即使用户在应用程序中导航,也不应再触发路由代码.
这是一个例子:
2参数并edit使用该id参数调用控制器操作(该参数获取该联系,显示正确的视图等).换句话说,正在配置初始应用程序状态.请注意,这是我的观点,其他开发人员只需trigger: true在用户单击链接时传递.但正如我在上面链接的书摘录中解释的那样,这往往会导致开发人员在javascript中创建"无状态应用程序"(例如,在URL中传递大量参数,即使它们应该存储在应用程序的状态中).所有这一切都有一个原因,默认情况下,Backbone的navigate方法trigger: false.
Derick Bailey(Marionette的创建者)也在这里讨论了这个问题:http://lostechies.com/derickbailey/2011/08/03/stop-using-backbone-as-if-it-were-a-stateless-web-server/