如何在选择框中绑定一个没有't使用Ember.Select显示在内容中

How to bind a value in select box which doesn't present in content using Ember.Select

本文关键字:使用 Select 显示 Ember 一个 绑定 选择      更新时间:2023-09-26

我在Ember.Select的内容数组中有一个值列表。所选的值可能存在也可能不存在于内容中。但是,如果内容中没有选定的值,则必须显示该值。

有关更多详细信息,请查看此jsbin

在这个例子中,如果我点击"setColorWithNewValue",它会用colorArray中不存在的新值设置colorObj。当我点击"alertValue"按钮时,它会在ColorObj中显示值,但在选择框中没有选择。

所选对象也需要在选择中。

当您调用setColorWithNewValue时,只需将新对象推送到colorsArray并将引用设置为colorObj

setColorWithNewValue: function() {
    var newObject = { 'name': 'White', 'value': '5'};
    this.get('colorsArray').push(newObject);
    this.set('colorObj', newObject);
}

或不改变colorsArray

mergedArray: function(){
    var arr = new Ember.A(this.get('colorsArray'));
    arr.push(this.get('colorObj'));
    return arr;
}.property('colorObj', 'colorsArray.@each')

并将合并后的数组传递给选择字段。

还要研究Ember.ArrayEmber.Object。Ember扩展了本机对象和数组。