我有一个添加所有组件,它使用一个复选框,选择所有选项或删除所有选项。
Add All组件如下所示: 的 HBS :
<label>{{input id="checkbox"
type="checkbox"
checked=isChecked}}
Add All</label>
JS :
App.AddAllComponent = Ember.Component.extend({
isChecked: false,
addAll: function() {
var self =this;
var options = self.get('options');
var optArray = options.toArray();
var selected = self.get('selected');
if (self.get('isChecked') === true){
(selected.clear()).pushObjects(optArray);
}else{
selected.clear();
}
}.observes('isChecked'),
});
我这样用:
<div class="form-input col-md-2">
<p class="form-input-title">List of Items</p>
{{view "select2Select"
content=items
optionValuePath="content.id"
optionLabelPath="content.codeWithName"
selection=item
multiple=true
}}
{{add-all classNames='btn-group'
options=items
selected=item
}}
</div>
select2select视图如下所示:
JS :
App.Select2SelectView = Ember.Select.extend(Em.I18n.TranslateableProperties, {
classNames: ['form-control'],
didInsertElement: function() {
Ember.run.scheduleOnce('afterRender', this, 'processChildElements');
},
processChildElements: function() {
this.$().select2({
placeholder: this.get('placeholder')
});
},
willDestroyElement: function () {
this.$().select2("destroy");
}
});
问题是即使这样可行,当我使用组件时,视图也不会使用所选内容进行更新(即使内容被推入模型,select2select下拉列表也未在UI中显示任何值).Help会非常感谢。