对 Ember 很陌生,请快速提问:如何保存/保留对属性的更改?在 Controller 中执行以下操作:
actions: {
togOnField: function(){
if (this.get('onField')){
this.set('onField', false);
} else {
this.set('onField', true);
}
}
}
环顾四周,我发现了
this.get('model').save
目前,使用此功能,属性会立即恢复到之前的状态。这是不是说明保存不成功?使用 Sails API 和 Postgres DB,两者似乎都工作正常。
我可以通过哪些不同的选项来通过此操作节省费用?非常感谢。
最佳答案
该 Controller 中的
this
指的是 Controller ,可能不是您期望的模型。您可以做的一件事是将模型传递给操作。
在您的模板中,
<button {{action 'toggleOnField' user}}>Toggle on field</button>
然后 Action 就变成了
actions: {
toggleOnField: function(user) {
user.toggleProperty('onField').save().then(function() {
// do something
}, function(reason) {
// handle error
});
}
}
关于node.js - Ember 保存对属性的更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28242728/