我正在关注 Embers 的入门指南,并对“入门指南”的这一步有疑问:http: //emberjs.com/guides/getting-started/marking-a-model-as-complete-incomplete/
简而言之,我们应该通过选中/取消选中复选框来切换模型的布尔属性。
这是 JSBin 中的代码:http: //jsbin.com/UDoPajA/1/edit
我实现了 UI 代码:
{{input type="checkbox" class="toggle" checked=isCompleted}}
似乎一切都在正常工作。UI 已正确更新,Ember 检查器告诉我该属性正在模型上切换。
该指南还告诉我添加一个控制器,如下所示:
Todos.TodoController = Ember.ObjectController.extend({
isCompleted: function(key, value){
var model = this.get('model');
if (value === undefined) {
// property being used as a getter
return model.get('isCompleted');
} else {
// property being used as a setter
model.set('isCompleted', value);
model.save();
return value;
}
}.property('model.isCompleted')
});
此时指南中定义的 TodoController(相同步骤)是否多余?如果没有,它添加了什么?