如何访问新 Ember 路由器的实例? API 文档似乎是指旧路由器或不正确:http://emberjs.com/api/classes/Ember.Router.html
RouterV2 不容易通过全局常量访问,这使得以“错误”方式做事变得更加困难。要记住的主要事情是,您不应该通过全局变量访问路由器(或其他任何东西)。这样做通常是一种不好的做法,会导致代码很难测试。不幸的是,使用旧路由器很容易做类似的事情App.router.transitionTo('whatever')
- 你可以在任何地方找到这样的例子,但这不是一个好主意。
ember 不使用全局引用,而是在需要的地方注入对路由器的本地引用。
- 来自模型:无法访问。模型不应该与路由器对话
- 从控制器:
router = this.get('target')
- 从视图来看:视图不应该访问路由器,但它发送到控制器的事件将会冒泡。例如:
this.get('controller').send('search', term)
- 从模板:使用
{{action}}
or {{#linkTo}}
帮助程序发送事件(通过控制器)或转换到另一个 url。
有关更多详细信息,请参阅此提交的注释:https://github.com/emberjs/ember.js/commit/5becdc4467573f80a5c5dbb51d97c6b9239714a8
** 更新 **
我为一月份的 EmberNYC 聚会做了一次闪电演讲,详细介绍了新路由器 - 幻灯片如下:我如何学会停止担忧并爱上路由器
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)