与ember select视图的完整对象绑定

时间:2015-08-13 19:49:05

标签: ember.js ember-data ember-cli

所以我在ember数据模型上构建一个绑定到hasMany关系的组件。我有一个搜索模式,我正在弹出,我只想获取搜索结果并使用addObject将模型添加到关系中。

export default Ember.Controller.extend({
  // relation is set when the controller is set up
  actions: {
    pushSelection(selection) {
      this.get('relation').addObject(selection);
    }
  }
});

所以如果我选择一个最基本的余烬选择形式,这样可以正常工作:

{{view "select"
  content=results 
  value=selection
  class="form-control"}}
<button type="button" {{action pushSelection selection}}>Make Selection</button>

以上是有效的,但select中充满了ember内部实例名称,并且根本不可接受。

如果我设置了optionLabelPath,它会立即停止工作,并且选择操作未定义。我认为,我已尝试过每一种可能的值,objectLabelPath,optionValuePath和选择的组合。

//reference selection by ID
{{view "select"
  content=results 
  value=selection.id
  optionValuePath='content.id'
  optionLabelPath='content.text'
  class="form-control"}}

//try just binding to whatever object
{{view "select"
  content=results 
  value=selection
  optionValuePath='content.id'
  optionLabelPath='content.text'
  class="form-control"}}

//don't bind the value of the option to the id
{{view "select"
  content=results 
  value=selection
  optionLabelPath='content.text'
  class="form-control"}}

//trying with the selection option instead
{{view "select"
  content=results 
  selection=selection
  optionValuePath='content.id'
  optionLabelPath='content.text'
  class="form-control"}}

我以前用select2插件做过这种事情,这很好,但这是一个插件,如果我可以避免id,我真的不想添加那个依赖。

0 个答案:

没有答案