当下拉菜单项更改时,我正在尝试调用父方法。这个概念看起来像这样:
Parent.vue
<template>
<child ref="someRef">
</template>
...
methods: {
doSomething() {
// use someRef.selectedItems and variables in the parent.vue class to perform logic
},
}
Child.vue
<template>
<v-select v-model="selectedItems" @change="doSomething" />
<template>
如何正确地将其连接在一起,以便子级中的下拉选择触发父级方法?这是一个清晰的案例,适合发出/ vuex /或其他东西吗?
答案 0 :(得分:2)
我会在这里发出。 (尽管我通常在几乎每个应用程序中都使用它,但至少我不会仅出于此问题的目的而添加Vuex。)
在子组件的doSomething
处理程序中,发出一个具有选定值的事件:
this.$emit('selected', value)
在您的父组件中,将侦听器连接到孩子的事件:
<child @selected="onSelected">
将onSelected(value)
添加到您的方法中。每当从子组件发出事件时,都会调用它。