如何使用ember-power-select-with-create添加数据?

时间:2017-04-06 05:45:25

标签: ember.js

我想弄清楚如何在gh readme上正确使用ember-power-select-with-create,但我坚持这个例子。

这是一个给出的例子:

{{#power-select-with-create
    options=countries
    selected=selectedCountry
    onchange=(action (mut selectedCountry))
    oncreate=(action "createCountry") as |country term|
}}
  {{country.name}}
{{/power-select-with-create}}

我无法弄清楚应该如何定义createCountry控制器动作。有人可以帮助我理解我应该如何定义createCountry吗?伪代码工作。假设上面的模板位于application.hbs模板上,下面的国家/地区数组位于application.js控制器

  countries: [
    { name: 'United States',  flagUrl: '/flags/us.svg' },
    { name: 'Spain',          flagUrl: '/flags/es.svg' },
    { name: 'Portugal',       flagUrl: '/flags/pt.svg' },
    { name: 'Russia',         flagUrl: '/flags/ru.svg' },
    { name: 'Latvia',         flagUrl: '/flags/lv.svg' },
    { name: 'Brazil',         flagUrl: '/flags/br.svg' },
    { name: 'United Kingdom', flagUrl: '/flags/gb.svg' },
  ]

1 个答案:

答案 0 :(得分:1)

您需要创建一个国家/地区对象并将其推送到countries数组,如下所示;

createCountry(countryName){
    let newCountry = {name: countryName, flagUrl: 'flags/unknown.svg'}; 
    this.get('countries').pushObject(newCountry);
}

您应该考虑为新添加的国家/地区添加未知标志。