start
Backbone.history.start([options])
- 当你的所有路由创建并且设置完毕后,调用Backbone.history.start()来开始监控hashchange事件,并且分配路由
- 需要指出的是:如果想在你的应用中使用HTML5支持的pushState,可以用:
Backbone.history.start({pushState:true});
- 如果你想用pushState但是浏览器不支持原生的,而是全屏刷新,你可以加一个hashChange:false
- 如果你的应用不是基于域名的根路径,需要以参数的方式,告诉History真正根路径:
Backbone.history.start({root:"/public/search"});
- 当执行后,路由成功地匹配到当前URL,Backbone.history.start()返回的true,反之,返回的false
- 因为IE依赖iframe来实现hash-based History,确保只有在DOM ready后再调用start()
$(function(){ new WorkspaceRouter(); new HelpPaneRouter(); Backbone.history.start({pushState:true}); })
相关推荐
Backbone.history.start(); ``` **三、源码分析** Backbone.js的源码简洁明了,开发者可以通过阅读源码来理解其内部工作原理,从而更好地定制和优化项目。例如,可以深入研究事件系统的实现,了解Model和View如何...
Backbone.history.start(); ``` **五、Backbone.Events** Backbone.Events是事件驱动的核心,它提供了一个简单的发布/订阅机制,使得任何对象都可以监听和触发事件。这对于组件间通信非常有用: ```javascript ...
Backbone.history.start(); ``` 通过以上介绍,我们可以看到 Backbone.js 如何提供了一个完整的架构来帮助开发者构建复杂的 Web 应用程序。无论是数据的管理、视图的渲染还是 URL 的路由,Backbone.js 都提供了一...
同时,你还需要设置全局的Backbone.history.start()来启动路由监听。 9. **性能优化**:在大型应用中,使用`delegateEvents`和`undelegateEvents`可以有效地管理DOM事件绑定,防止内存泄漏。另外,使用`_.throttle`...
Backbone.history.start(); ``` 在上面的代码中,`allContacts`路由对应于显示所有联系人的视图,而`filteredContacts`路由接收一个参数(过滤器),用于动态地过滤和展示联系人。通过这种方式,用户可以使用浏览器...
//require the introspector file'introspector'] , function ( Backbone , AppView , Workspace , introspector ) {/*jshint nonew:false*/// Initialize routing and start Backbone.history()new Workspace ( ) ;...
Backbone.history.start(); // 启动路由器监听URL变化 ``` ### 5. 使用工具 在学习Backbone的过程中,你可能会用到一些辅助工具,如Underscore.js(Backbone的依赖库,提供实用函数)和RequireJS(模块加载器,...
Backbone.history.start(); // 必须启动Backbone.history以驱动整个应用程序 } }; ``` 接下来,我们创建一个名为`Hello`的Model,它有自定义的URL属性,指向`api.php`,并初始化`message`字段: ```javascript ...
6. **启动路由器**:在应用启动时,调用`Backbone.history.start()`启动路由器监听浏览器URL变化。 7. **模板渲染**:使用模板引擎渲染数据到HTML,Backbone.js默认使用Underscore.js模板,但也可以选择其他模板库...
`Backbone.history.start()`启动了路由监听,使得Backbone可以监听浏览器的URL变化。 ### 前进、后退和导航 通过`router.navigate`方法,我们可以主动触发路由的改变,这在需要更新视图但不希望刷新页面时特别有用...
Backbone.history.start({ pushState: true, root: "/myapp/" }); ``` **六、总结** “backbone-router-example”这个项目为我们展示了如何在Backbone应用中有效地使用Router来管理页面导航。通过定义路由模式并...
创建Router实例后,我们需要调用`Backbone.history.start()`来启动路由监听。这将激活Backbone对`hashchange`或`popstate`事件的监听,并根据当前URL加载相应的路由。 ```javascript var router = new AppRouter();...
`Backbone.history.start()`会启动路由器,监听浏览器的URL变化,并根据URL调用相应的处理函数。 4. **处理函数**:在定义的处理函数中,我们可以根据URL内容来加载或更新页面内容。例如: ```javascript showHome:...
Backbone.history.start(); // 在某个时刻调用 router.rewind(); ``` 在这个例子中,`MyRouter`继承了`Backbone.RewindableRoute`,并且定义了两个路由规则。当调用`rewind`方法时,路由器会返回到上一个路由状态。...
Backbone.history.start(); ``` **在Backbone-Router-master项目中学习:** 该项目很可能包含了示例代码和教程,帮助你了解如何在实际项目中使用Backbone.Router。通过查看源码,你可以看到如何配置路由,如何处理...
当Backbone.history.start()被调用后,如果地址栏是"#!/hello",那么Backbone.js会请求后端API(/api.php),获取数据,更新到Hello模型,并通过Mustache模板渲染到页面上,从而显示出"tom says: helloworld"的内容...
Backbone.history.start(); }); ``` 总结来说,"backbone-contactlist"项目是一个很好的实践平台,可以帮助开发者了解如何利用Backbone.js来构建一个简单的Web应用。通过学习这个项目,你将掌握如何组织前端代码,...