美文网首页
在 Vue 中,子组件如何向父组件传递数据?

在 Vue 中,子组件如何向父组件传递数据?

作者: 祈澈菇凉 | 来源:发表于2023-09-01 09:53 被阅读0次

在 Vue 中,子组件向父组件传递数据可以通过自定义事件来实现。

下面是一种常见的方法:

在子组件中,使用 $emit 方法触发一个自定义事件,并传递要传递给父组件的数据作为参数。

<template>
  <button @click="sendDataToParent">传递数据给父组件</button>
</template>

<script>
export default {
  methods: {
    sendDataToParent() {
      const data = '这是子组件传递给父组件的数据';
      this.$emit('custom-event', data);
    }
  }
}
</script>

子组件中的 sendDataToParent 方法通过 $emit 触发了一个名为 'custom-event' 的自定义事件,并将数据 '这是子组件传递给父组件的数据' 作为参数传递给父组件。

在父组件中,使用 v-on 或简写的 @ 语法监听子组件触发的自定义事件,并在相应的处理函数中接收子组件传递的数据。

<template>
  <div>
    <child-component @custom-event="handleCustomEvent"></child-component>
    <div>{{ receivedData }}</div>
  </div>
</template>

<script>
import ChildComponent from './ChildComponent.vue';

export default {
  components: {
    ChildComponent
  },
  data() {
    return {
      receivedData: ''
    };
  },
  methods: {
    handleCustomEvent(data) {
      this.receivedData = data;
    }
  }
}
</script>

父组件通过使用 @custom-event 监听子组件触发的自定义事件,并在 handleCustomEvent 方法中接收子组件传递的数据。

父组件将接收到的数据设置为 receivedData 属性,然后可以在模板中进行显示或进一步处理。

相关文章

  • vue父子组件传递数据方法

    标签(空格分隔): vue 父组件向子组件传递数据 Vue中父组件向子组件传递数据用props 举个例子 父组件中...

  • vue组件间通信

    vue组件间通信 1.父组件向子组件传递数据--props 在vue2.0中使用props实现向子组件传递数据: ...

  • vue子父组件通信

    子父组件传递数据 父组件===》子组件。父组件通过props向子组件中传递数据和改变数据的函数,通过在子组件中调用...

  • vue中父子组件之间通信的方式

    1,父组件给子组件传递数据 vue中使用props向子组件传递数据1): 子组件在props中创建一个属性,用于接...

  • vue笔记9.20

    在vue中父组件向自子组件传递props子组件向父组件传递属性是用$emit shopping: 浏览器打开: 子...

  • Vue 组件数据传递

    Vue 组件数据传递 父组件->子组件 父组件到子组件的数据通过 props 传递 在父组件注册子组件,传递数据到...

  • vue组件嵌套(模态框)

    在vue中父组件向自子组件传递props; 子组件向父组件传递属性是用$emit(发布订阅); 实例基本逻辑:点击...

  • Vue Prop传值(父to子)

    通过Prop向子组件传递数据 如何使用 第一步父组件App.vue中 解释:把父组件中的data中的users:[...

  • Vue父组件调用子组件事件

    Vue父组件向子组件传递事件/调用事件 不是传递数据(props)哦,适用于 Vue 2.0 方法一:子组件监听父...

  • vue常见面试题

    1.vue优点 2.vue父组件向子组件传递数据? 3.子组件像父组件传递事件 4.v-show和v-...

网友评论

      本文标题:在 Vue 中,子组件如何向父组件传递数据?

      本文链接:https://www.haomeiwen.com/subject/ppezmdtx.html