如何正确删除vue-select多选项

时间:2017-06-22 16:04:08

标签: javascript vue.js vuejs2

我有一个vue-select multiselect(http://sagalbot.github.io/vue-select/)定义为

<v-Select label="label" multiple :on-change="updateCities" :options="cities"></v-Select>

方法updateCities定义为

'updateCities': function (menuItem) {
            var name = ''
            // iterate thru the elements in the multiselect
            menuItem.forEach(function (elem, i) {
                name = elem.label
                return name
            })
            // push the selected element to an array in the data model
            this.state.city.push(name)
        }

,数据模型定义为

'data' () {
        return {
            'state': {
                'city': []
            }
        }
    }

当我点击多选并选择一个城市时,菜单和数据模型数组city都会正确更新,但是当我点击菜单项右上角的X来删除元素时菜单和数据模型数组city。如下所示 enter image description here

该元素已从菜单中正确删除,但未从数据模型数组city中删除。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

这是通过将this.state.city的值赋值给菜单项来解决的:

'updateAdvertisers': function (menuItem) {
            this.state.city= menuItem.map(elem => elem.label)
        }