在Ember.js中预置复选框的最佳方法是什么?

时间:2016-05-18 07:32:34

标签: javascript ember.js

我有带复选框的模板

<div class="col-sm-6">
   <input type="checkbox" id="isDeletedCheckbox" {{action "toggleIsDeleted" "isDeletedCheckbox" on="change"}}/>
</div>

我有路线

afterModel(model) {
    this.controllerFor(this.get('routeName')).set('model', model)
},

我尝试使用

setupController() {
    if (this.controller.get('model').get('isDeleted')) {
        this.controller.set("isDeletedCheckbox", true);
    }
}

setupController() {     
   if (this.controller.get('model').get('isDeleted')) {
        $("#isDeletedCheckbox").checked(true);
   }
}

但无法预设值

1 个答案:

答案 0 :(得分:2)

您应该使用{{input type="checkbox"}} helper

{{input type="checkbox" name="isEmberized" checked=model.isDeleted}}

如果您的模型如下所示:

model() {
  return { isDeleted: true };
}

你应该从不没有像

那样的东西
$("#isDeletedCheckbox").checked(true);

在路线或控制器中。 在组件中使用直接DOM操作!