【问题标题】:Vue Select component get value id of selected arrayVue Select组件获取所选数组的值id
【发布时间】:2017-05-28 15:29:56
【问题描述】:

我使用了 Vue Select 组件,我整天都在努力从选定的数组中获取 value 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);
                    });
            },

enter image description here

【问题讨论】:

  • 我认为是on-change="consoleCallback"而不是:on-change="consoleCallback" ,没有冒号(:)
  • 我会尝试 'v-on:change' 或简称 '@change'
  • on-change="consoleCallback" 不是 :on-change="consoleCallback" ,没有冒号(:)就挂了

标签: vue.js vuejs2 vue-component


【解决方案1】:

查看 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))
  }
}

【讨论】:

    【解决方案2】:

    Vue.set(vm.$data, 'model', response.data.model) → this.model = response.data.model

    【讨论】:

      【解决方案3】:

      我知道它已经晚了,但是对于任何寻找答案的人,我在 github here 上找到了这个问题已经解决的线程。该组件有一个“index”道具,您可以将其设置为“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>

      【讨论】:

      猜你喜欢
      • 2020-10-28
      • 2019-11-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-12-15
      • 1970-01-01
      • 2019-02-03
      相关资源
      最近更新 更多