Могу ли я передать более одного значения в одной опции из x-select addon на ember? - PullRequest
0 голосов
/ 18 декабря 2018

Я хотел бы передать более одного значения в одном параметре из дополнения x-select в ember.Это возможно?Например,

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

Любые предложения и ответы приветствуются, спасибо!

1 Ответ

0 голосов
/ 18 декабря 2018

Нет, это невозможно.option-component оборачивает собственный тег <option>.Компонент option имеет следующие атрибуты attributeBindings:

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

Просто передайте всю модель компоненту option в качестве значения.

{{#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);
    }
  }
...