Ember.js 如何从路由器内部访问控制器属性?

Ember.js 如何从路由器内部访问控制器属性?,ember.js,ember-router,ember-controllers,Ember.js,Ember Router,Ember Controllers,我在路由器中使用willtransitionhook,如下所示 actions: { willTransition(transition) { this._super(...arguments); //some code goes here } } this.set('someProperty', 500); 是否有一种方法可以访问此处从控制器设置的某些属性 例如:在我的控制器中,我将值500设置为som

我在路由器中使用willtransitionhook,如下所示

actions: {
        willTransition(transition) {
            this._super(...arguments);
            //some code goes here
        }
    }
this.set('someProperty', 500);
是否有一种方法可以访问此处从控制器设置的某些属性

例如:在我的控制器中,我将值500设置为
someProperty
,如下所示

actions: {
        willTransition(transition) {
            this._super(...arguments);
            //some code goes here
        }
    }
this.set('someProperty', 500);

我如何在上面的方法中访问该值(在路由器中)。感谢您的帮助。

您可以尝试
controller
属性

this.controller.set('someProperty',500)

您可以尝试
controller
property

this.controller.set('someProperty',500)

实际上,我想在路由器内部得到这个值。当我使用
this.controller.get('someProperty')
时,它给出
未定义的
只需执行
console.log('controller properties',this.controller)并检查出了什么问题?是否属性名称尚未定义…您还有一个选项
此选项。controllerFor('routename')
将为控制器提供实例,实际上我希望在路由器中获取该值。当我使用
this.controller.get('someProperty')
时,它给出
未定义的
只需执行
console.log('controller properties',this.controller)并检查出了什么问题?是否属性名称尚未定义…您还有一个选项
此选项。controllerFor('routename')
将提供控制器实例您的意思是要访问
路由中的
控制器,而不是
路由器中的
。两者之间有明显的区别。您的意思是要访问
路由
中的
控制器
,而不是
路由器
。这两者之间有着明显的区别。