vue子组件向父组件传参的方式

在Vue中,子组件向父组件传递参数可以通过自定义事件和props属性来实现。下面是一些关键代码示例:

1. 使用自定义事件:

在子组件中,通过 $emit 方法触发一个自定义事件,并传递参数。

复制代码
<template>
  <button @click="sendData">传递参数</button>
</template>

<script>
export default {
  methods: {
    sendData() {
      this.$emit('custom-event', 'Hello, Parent!'); // 触发custom-event事件并传递参数
    }
  }
}
</script>

在父组件中,监听子组件的自定义事件,并在相应的方法中接收参数。

复制代码
<template>
  <div>
    <child-component @custom-event="handleData"></child-component>
    <p>从子组件接收到的参数:{{ receivedData }}</p>
  </div>
</template>

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

export default {
  components: {
    ChildComponent
  },
  data() {
    return {
      receivedData: ''
    };
  },
  methods: {
    handleData(data) {
      this.receivedData = data; // 接收子组件传递的参数
    }
  }
}
</script>

2. 使用props属性:

在父组件中,通过props属性将数据传递给子组件。

复制代码
<template>
  <div>
    <child-component :data-from-parent="dataToSend"></child-component>
  </div>
</template>

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

export default {
  components: {
    ChildComponent
  },
  data() {
    return {
      dataToSend: 'Hello, Child!'
    };
  }
}
</script>

在子组件中,使用props属性接收父组件传递的参数。

复制代码
<template>
  <div>
    <p>从父组件接收到的参数:{{ dataFromParent }}</p>
  </div>
</template>

<script>
export default {
  props: ['dataFromParent']
}
</script>

上述代码示例展示了两种常用的方式来实现子组件向父组件传递参数。根据具体的需求和场景,您可以选择其中一种方式来实现

相关推荐
Flynt4 分钟前
我把热榜那篇"禁用 axios"逐条实测了一遍:结论大体对,坑在它没讲的地方
前端·javascript·axios
Csvn39 分钟前
bundle优化
前端
slongzhang_1 小时前
linux 递归删除源码文件|递归删除目录下 *.js,但排除 *.min.js
linux·开发语言·javascript
北冥有鱼1 小时前
发版后动态路由点击报 `Failed to fetch dynamically imported module`」问题上的完整排查与修复过程
前端·vue.js
静默回滚1 小时前
视频压到 25 MB 以内,码率要算、音轨要扣、余量要留
前端
用户37203749260181 小时前
把 10MB 中文语义模型塞进浏览器:STSB 做到教师模型的 93%,但线上 top1 只有 42%
前端
光锥智能1 小时前
海康机器人举行2026移动机器人新品发布会:箱式存拣升级,「明智」系列发布
java·前端·机器人
计算机魔术师1 小时前
Anthropic 上市文件最吓人的一幕,不是亏损 807 亿
前端
alsmile2 小时前
AI友好的可视化图形引擎自我革命:Meta2d.js 2.0 历时一年全新重写,性能与多人协作全面升级
前端·开源·数据可视化
行思理2 小时前
Nginx 跨站请求(CORS)配置完全指南:从原理到生产实践
java·前端·nginx