vue 2如果更改值,如何更新v-model?

时间:2017-04-13 11:26:45

标签: javascript data-binding vue.js vuejs2

我有几张牌就像单选按钮一样。

<div class="card">
    <input
       checked=""
       class="card__input"
       type="radio"
       v-model="templatePicked"
       :value="template.value"
       name="template"
       :id="template.id"
     >
    <label :for="template.id" class="card__label"></label
    <ui-select
       name="version"
       placeholder="Select a version"
       :keys="{ label: 'text', value: 'value' }"
       :options="templateVersions"
       v-model="template"
     ></ui-select>
</div>

因此,当我们点击选择项目(在ui-select中)时,我们会更新卡片单选按钮idvalue。问题是,如何更新templatePicked?因为现在它只在我点击单选按钮时更新。

P.S 我使用vue 2.2.6。 选择组件:https://josephuspaye.github.io/Keen-UI/#/ui-select 它有@change个事件但我不明白如何在我的情况下使用它。

P.S.S 它在vue 1.0.28中实际上是完美的,我在组件上使用了:value.sync="ubuntu"

请帮忙!

1 个答案:

答案 0 :(得分:2)

您可以收听@select事件(选择项目时)或@focus。有关更多选项,请参阅https://josephuspaye.github.io/Keen-UI/#/ui-select(事件)。

<ui-select
   name="version"
   placeholder="Select a version"
   :keys="{ label: 'text', value: 'value' }"
   :options="templateVersions"
   v-model="template"
   @select="setTemplatePicked(template)"
 ></ui-select>

接下来添加一个设置所选模板的方法(例如setTemplatePicked)。