我有一个方法可以观察全局对象中的页码值。
当我更新页码时,观察值会调用一个方法向服务器发送操作。
这里当我将操作处理程序外部的观察文件设置为正常工作时,但是当我在操作处理程序中移动observes方法时,则在值更改时不会触发它。
此外,当我将操作处理程序放在操作处理程序之外时,它会抛出警告,表示操作之外的操作处理程序已弃用。
当我将方法放在动作处理程序中时,如何监听观察。
模板:
<script type="text/x-handlebars" data-template-name="index">
<button {{action "updatePage"}}>Update Page Number</button>
</script>
app.js:
App.globalval = Ember.Object.create({
page: 1
});
App.IndexRoute = Ember.Route.extend({
globalValChange: function(){
this.send('someFunction');
}.observes('App.globalval.page'),
actions:{
someFunction: function(){
console.log("in function to send request to server");
},
updatePage: function(){
App.globalval.set('page', 5);
}
}
});
JSBIN Link
答案 0 :(得分:0)
动作哈希是为发送到控制器/路由的动作保留的,所以答案是你不能,也不应该。
计算属性/观察者/函数应该存在于扩展对象本身中。