Vue-子选择触发父方法

时间:2019-02-25 19:20:20

标签: vue.js

当下拉菜单项更改时,我正在尝试调用父方法。这个概念看起来像这样:

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 /或其他东西吗?

1 个答案:

答案 0 :(得分:2)

我会在这里发出。 (尽管我通常在几乎每个应用程序中都使用它,但至少我不会仅出于此问题的目的而添加Vuex。)

在子组件的doSomething处理程序中,发出一个具有选定值的事件:

this.$emit('selected', value)

在您的父组件中,将侦听器连接到孩子的事件:

<child @selected="onSelected">

onSelected(value)添加到您的方法中。每当从子组件发出事件时,都会调用它。