首页 > 解决方案 > 将 vue 多选挂载到新生成的组件

问题描述

我正在尝试将 vue-multiselect 安装到可以由 javascript 生成的字段中。在字段之间进行识别。我在每个 id 上创建了后缀为#metric1_{numhere}. Vue 成功安装,#metric1_1但不适用于任何新元素,例如#metric1_2.

metricVue = new Vue({
  components: {
    Multiselect: window.VueMultiselect.default
  },
  data: {
    value: { key: 'ctr', value: 'CTR' },
    options: toKeysValues(metricNames)
  },
  methods: {
    customLabel (option) {
      return `${option.value}`
    }
  }
});


function addVues(vc){
  metricVue.$mount('#metric1_'+vc);
}

标签: vue.jsvuejs2vue-component

解决方案


okey,每次挂载一个Vue实例,都需要重新构建一个新的Vue实例,而不是一遍遍地使用同一个Vue实例。

function addVues(vc){ 
  new Vue({...}).$mount('#metric1_'+vc); 
}

推荐阅读