我在我的应用程序中使用vue.js(v2.6.14)和vue-Multiselect(v2.1.6).
我在通过单击sibling 元素input[type='checkbox']来更改multiselect组件内的数据时遇到了问题.
components: {
Multiselect
},
data() {
residence: {
name: 'Not selected'
},
residenceOptions: [
{ name: 'Not selected' },
{ name: 'Albania' },
{ name: 'Algeria' },
...
{ name: 'United Arab Emirates'}
]
}
<multiselect
v-model='residence'
:options='residenceOptions'
label='name'
placeholder='Residence'
track-by='name'>
<template slot='singleLabel' slot-scope='{ option }'>
<strong>{{ option.name }}</strong>
</template>
</multiselect>
<div class='form__checkbox'>
<input
id='quotationForm-resident'
class='form__input'
name='residence'
type='checkbox'
placeholder=''
:checked='residence && residence.name === "United Arab Emirates"'
@click='residence.name = "United Arab Emirates"'
/>
此代码中的What I expected:通过单击该复选框,所选值(多选组件中的数据指针)将有所不同(一个值对应于名称为"阿拉伯联合酋长国"的元素).
What I got:多选不会更改列表中的选定元素,而只是使用值"阿拉伯联合酋长国"重写选定元素的每个名称属性.
我希望我能正确地描述那个问题????