以下申请流程是否有推荐的方法或模式?
我看到的问题是模型保留了用户更改的值,尽管它们没有保留到后端。
我目前解决问题的方法是这样,感觉非常笨重:
在setupController
钩子中,我使用Ember.copy从模型中设置了几个默认属性值来打破绑定:
setupController: function(controller, model) {
this._super(controller, model);
var goals = model.get('goals');
controller.set('goalOne', Ember.copy(defaultGoal.get('goalOne')));
controller.set('goalTwo', Ember.copy(defaultGoal.get('goalTwo')));
controller.set('goalThree', Ember.copy(defaultGoal.get('goalThree')));
}
将我的输入绑定到这些值:
{{input value=goalOne type='text'}}
单击“保存”时,调用updateModel()
方法,将这些值设置回模型并保留到后端。
updateModel: function() {
var model = this.get('content');
model.set('goalOne', this.get('goalOne');
model.set('goalTwo', this.get('goalTwo');
model.set('goalThree', this.get('goalThree');
}
actions: {
save: function() {
this.updateModel();
this.get('content').save();
}
}