假设我的应用程序绑定到window.App
:我可以得到它的路由器App.__container__.lookup("router:main")
。
如何访问当前路线?具体来说,我想得到它的财产routeName
。
假设我的应用程序绑定到window.App
:我可以得到它的路由器App.__container__.lookup("router:main")
。
如何访问当前路线?具体来说,我想得到它的财产routeName
。
它存在一个名为的属性currentPath
,它是应用程序当前状态的计算别名。要获得routeName
相同的电流,您可以执行以下操作:
App = Ember,Application.create({
currentPath: ''
});
ApplicationController : Ember.Controller.extend({
currentPathDidChange: function() {
App.set('currentPath', this.get('currentPath'));
}.observes('currentPath')
});
然后从任何地方访问它:
App.get('currentPath');
有关该物业的更多信息,请参见此处。currentPath
另外值得一提的是,您可以将标志启用LOG_TRANSITIONS
为 true,以便在每次应用程序更改状态/路由时将当前路由名称记录在浏览器控制台中:
App = Ember.Application.create({
LOG_TRANSITION: true
});
注意仅
将App.__container__.lookup("router:main")
其用于调试目的,因为它是一个内部 API。
希望能帮助到你。