我使用了Vue Select组件,我整日都在努力从所选数组中获取值id
<v-select multiple label="name" :on-change="consoleCallback" :options="option" :value.sync="option.id" :value="id" v-model="users_id">
</v-select>
import vSelect from 'vue-select'
export default {
components: {vSelect},
props: ['title'],
data(){
return{
model: {
'title':'',
},
users_id:[],
option: [],
methods: {
fetchData(id){
let vm = this;
let dataInput = vm.model;
axios.get('/subject/' +id+ '/edit',dataInput)
.then(function (response) {
Vue.set(vm.$data, 'model', response.data.model)
Vue.set(vm.$data, 'option', response.data.option)
})
.catch(function (error) {
console.log(error);
});
},
答案 0 :(得分:0)
查看Vue Select的documentation,您应该使用on-change而不是:on-change。文档中的On-Change Callback示例如下所示:
<v-select on-change="consoleCallback" :options="countries"></v-select>
和
methods: {
consoleCallback(val) {
console.dir(JSON.stringify(val))
},
alertCallback(val) {
alert(JSON.stringify(val))
}
}
答案 1 :(得分:0)
Vue.set(vm。$ data,'model',response.data.model) → this.model = response.data.model
答案 2 :(得分:0)
我知道它来晚了,但是对于任何寻找答案的人,我都在github here上找到了解决该问题的线程。该组件具有一个“索引”属性,您可以将其设置为“ id”以仅获取id值。
<v-select index="id" multiple label="name" :on-change="consoleCallback" :options="option" :value.sync="option.id" :value="id" v-model="users_id">
</v-select>