【发布时间】:2013-10-24 18:24:06
【问题描述】:
由于Backbone 的Router 只能使用“#”,这意味着它应该都在同一个页面中。 BB 应用程序是否应该只在一页中并且只有 1 个路由器?
【问题讨论】:
标签: backbone.js backbone-routing
由于Backbone 的Router 只能使用“#”,这意味着它应该都在同一个页面中。 BB 应用程序是否应该只在一页中并且只有 1 个路由器?
【问题讨论】:
标签: backbone.js backbone-routing
Backbone 的许多优点之一是它对您如何使用它非常不以为然。例如,如果您只想使用视图,那么您可以这样做,如果您只想使用模型,您也可以这样做。
Backbone 应用程序可以是一个单页应用程序,如果这是您的目标,它当然提供了许多功能来使这更容易,但它不是必须的。手动显式调用视图而不是使用路由器绝对没有错。
回答您问题的第二部分...不,您可以拥有任意数量的路由器。但是,我想说大部分 Backbone 应用程序只使用一个。我正在开发一个拥有一百多个不同视图的 Backbone 应用程序,而且我从未遇到过必须引入辅助路由器的问题。
最后,对您进行一些更正;只要您的浏览器具有 pushState 功能,Router 对象实际上就不再强制使用“#”。如有必要,旧版浏览器(主要是 IE)将回退到主题标签方法。
希望这会有所帮助!
【讨论】:
foo,Backbone 会自动使用/foo 吗?