首页 > 解决方案 > 我可以在 ember 上的 x-select 插件的一个选项中传递多个值吗?

问题描述

我想从 ember 中的 x-select 插件的一个选项中传递一个以上的值。那可能吗?例如,

  {{#each model as |model|}}
     {{#xs.option value1=model.name value2=model.anotherAttributeName}
       {{model.name}} 
     {{/xs.option}}
  {{/each}}

任何建议和答案都非常感谢,谢谢!

标签: ember.jsember-data

解决方案


不,那是不可能的。option-component 包装原生<option>标签。选项组件具有以下属性绑定:

'selected', 'name', 'disabled', 'value', 'title'

只需将整个模型作为值传递给选项组件。

{{#x-select value=selected onChange=(action "selectOption") as |xs|}}
  {{#each model as |model|}}
     {{#xs.option value=model}}
       {{model.name}} 
     {{/xs.option}}
  {{/each}}
{{/x-select}}

在您的操作中,您可以访问您的整个模型。

  actions: {
    selectOption(value) { // value is a reference to the selected model
      console.log(value.name, value.anotherProperty);
      this.set('selected', value);
    }
  }

推荐阅读