Когда я выкопал исходный код этого компонента, к сожалению, я понял, что не существует никакого "le git" способа выполнить ваши требования. Обратный вызов @blur будет называться несмотря ни на что. Невозможно отрегулировать это поведение.
Обходной путь: некоторый аспект блокировки с временем восстановления ...
new Vue({
components: {
Multiselect: window.VueMultiselect.default
},
data: {
blocked: false,
value: { language: 'JavaScript', library: 'Vue-Multiselect' },
options: [
{ language: 'JavaScript', library: 'Vue.js' },
{ language: 'JavaScript', library: 'Vue-Multiselect' },
{ language: 'JavaScript', library: 'Vuelidate' }
]
},
methods: {
toggle () {
if (!this.blocked) {
this.$refs.multiselect.toggle();
}
},
block () {
this.blocked = true;
setTimeout(() => {
this.blocked = false;
}, 200);
}
}
}).$mount('#app')