摘要:
1. 默认的路由器使用浏览器的hash来加载应用程序的开始状态并且当你移动时同步保持。目前,这依赖于浏览器中存在的hashchange事件。 2. 假设下面的路由器,输入/#/posts/new将会把你带到posts.new路由。 app/router.js Router.map(function( 阅读全文
摘要:
一、Transitioning and Redirection 从一个route调用transitionTo或者从一个controller调用transitionToRoute将会停止任何进程中的任何跳转并且开启一个新的,作为重定向功能。 transitionTo携带的参数和行为和link-to辅助 阅读全文
摘要:
1. route handler一个重要的任务就是渲染合适的模板到屏幕。 2. 默认的,一个route handler将会呈现模板到最近的父模板。 app/router.js Router.map(function() { this.route('post'); }); app/routes/pos 阅读全文
摘要:
1. 改变URL可能也会改变屏幕显示哪个模板。然而,如果它们有信息去显示,模板才是有用的。 2. 在Ember.js中,一个模板从一个controller检索信息去显示。 3. 为了告诉controller去展示哪个模板,在路由处理器的setupController hook中设置它的model属性 阅读全文
摘要:
一、概述 应用程序中,templates被models支持。但是templates是如何知道它们应该显示哪个model呢? 例如,你有一个photos模板,它是如何知道它该呈现哪个model呢? 这就是Ember.Route工作的一部分。你可以通过定义一个和template同名的route来告诉模板 阅读全文
摘要:
就像在routing guide中介绍的那样,不管什么时候你在路由器中定义一个新路径,Ember.js就会尝试寻找一个对应的route,controller,template,它们的命名都是根据命名约定的。如果没找到任何这些对象的实现,会为你生成合适的对象。 一、Generated Routes 假 阅读全文
摘要:
一、概述 1. 当应用程序启动时,路由器负责显示模板,加载数据,另外还设置应用程序的状态。这是通过匹配当前URL到你定义的routes来实现的。 2. Ember app router中的Map方法可以被调用来定义URL映射。当调用Map时,你应该传递一个function,它将会被调用,this会被 阅读全文
摘要:
一、Routing 1. 当用户与应用程序交互时,它会经过很多状态。Ember.js为你提供了有用的工具去管理它的状态和扩展你的app。 2. 要理解为什么这是重要的,假设我们正在编写一个Web应用程序来管理一个博客。如:是当前登录的用户吗?他们是管理员用户吗?他们在看什么?是设置屏幕打开?他们正在 阅读全文