Nat*_*man 6 javascript ember.js
在实例化或为特定路由重新初始化控制器时,是否应该使用事件或挂钩来捕获控制器?
我已经尝试过init()- 但是我的控制器只在应用程序的生命周期中实例化一次,但根据路径支持多种模型.我需要捕获的是当控制器的模型发生变化时,或者在实例化后路由发生变化时的某个时刻.
我也尝试过设置一个计算属性,但它并不合适,因为我需要一个事件来在模型改变时触发一个函数 - 不仅仅是在调用属性时.
非常感谢任何帮助.
编辑:啊哈!我完全看了一下这个事实,我可以设置observes()我的功能,以便在模型更改时触发它.
所以,我的答案是做以下事情:
dependency: function() {
console.log('the model has changed');
//...other stuff...
}.observes('model')
Run Code Online (Sandbox Code Playgroud)
从我的编辑:
啊哈!我完全看了一下这个事实,我可以在我的函数上设置observes(),以便在模型更改时触发它.
所以,我的答案是做以下事情:
Run Code Online (Sandbox Code Playgroud)dependency: function() { console.log('the model has changed'); //...other stuff... }.observes('model')