在Ember 2.7.1中,可以通过以下方式从应用控制器观察当前的路由名称:
@observer
装饰器或Ember.observer
函数来创建观察器。import Controller from '@ember/controller';
import { observer } from '@ember/object';
export default Controller.extend({
currentRoute: null,
// 使用@observer装饰器创建观察器
@observer('currentRouteName')
onRouteChange() {
// 当路由名称发生变化时,执行此函数
this.set('currentRoute', this.get('currentRouteName'));
}
});
{{get}}
辅助函数来获取应用控制器中的currentRoute
属性,从而获取当前路由的名称。{{!-- 模板代码 --}}
Current Route: {{get this 'currentRoute'}}
这样,当路由发生变化时,应用控制器中的currentRoute
属性会被更新,模板中的{{get}}
辅助函数会自动重新计算并显示当前路由的名称。
请注意,以上代码仅适用于Ember 2.7.1版本,不同版本的Ember可能会有差异。此外,这只是一种获取当前路由名称的方法,Ember还提供了其他方式来处理路由相关的逻辑。
领取专属 10元无门槛券
手把手带您无忧上云