当前位置: 首页 > news >正文

Vue 子组件向父组件传值

 1、使用自定义事件 ($emit)

这是Vue中最常用的子组件向父组件传递数据的方式。子组件通过触发一个自定义事件,并附加数据作为参数,父组件则监听这个事件并处理传递过来的数据。

子组件 (发送数据):

<template><button @click="sendData">发送数据给父组件</button>
</template><script>
export default {methods: {sendData() {// 触发一个名为'dataSent'的自定义事件,并传递数据this.$emit('dataSent', { key: 'value' });}}
}
</script>

父组件 (接收数据):

<template><child-component @dataSent="handleDataFromChild"></child-component>
</template><script>
import ChildComponent from './ChildComponent.vue';export default {components: {ChildComponent},methods: {handleDataFromChild(data) {console.log('从子组件接收到的数据:', data);}}
}
</script>

2、

使用ref直接访问子组件方法或属性

虽然这种方法不鼓励频繁使用,因为可能破坏组件的封装性,但在某些情况下,直接通过ref访问子组件的方法或属性也是可行的。

子组件 (提供数据访问方法):

<script>
export default {methods: {getDataForParent() {return { info: '这里是子组件的数据' };}}
}
</script>

父组件 (通过ref获取数据):

<template><child-component ref="childRef"></child-component>
</template><script>
import ChildComponent from './ChildComponent.vue';export default {components: {ChildComponent},methods: {fetchChildData() {// 通过ref调用子组件的getDataForParent方法const data = this.$refs.childRef.getDataForParent();console.log('从子组件获取的数据:', data);}},mounted() {this.fetchChildData(); // 页面加载时获取数据}
}
</script>

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • ros 学习记录(四)仿真环境中键盘控制turtlebot3运动
  • MySQL - 信贷业务报表
  • 半年不在csdn写博客,总结一下这半年的学习经历,coderfun的一些碎碎念.
  • Hudi 多表摄取工具 HoodieMultiTableStreamer 配置方法与示例
  • RH850F1KM-S4-100Pin_ R7F7016453AFP MCAL Gpt 配置
  • SylixOS nty模块使用说明
  • Spring框架温习
  • 大学校园广播“录编播”与IP广播系统技术方案
  • [240527] 谷歌 CEO 承认 AI 编造虚假信息问题难解(此文使用 @gemini 命令二次创作)| ICQ 停止运作
  • 【Linux】-Flink分布式内存计算集群部署[21]
  • Mysql下Limit注入方法(此方法仅适用于5.0.0<mysql<5.6.6的版本)
  • DFS:解决二叉树问题
  • 返回枚举类给前端
  • Vue.js条件渲染与列表渲染指南
  • linux设置不记录历史命令
  • angular2 简述
  • FastReport在线报表设计器工作原理
  • java取消线程实例
  • js 实现textarea输入字数提示
  • Linux各目录及每个目录的详细介绍
  • Sublime text 3 3103 注册码
  • 编写符合Python风格的对象
  • 对话:中国为什么有前途/ 写给中国的经济学
  • 干货 | 以太坊Mist负责人教你建立无服务器应用
  • 吐槽Javascript系列二:数组中的splice和slice方法
  • 我的zsh配置, 2019最新方案
  • 小而合理的前端理论:rscss和rsjs
  • 400多位云计算专家和开发者,加入了同一个组织 ...
  • ​MPV,汽车产品里一个特殊品类的进化过程
  • ​软考-高级-信息系统项目管理师教程 第四版【第14章-项目沟通管理-思维导图】​
  • #NOIP 2014# day.1 生活大爆炸版 石头剪刀布
  • #经典论文 异质山坡的物理模型 2 有效导水率
  • (java版)排序算法----【冒泡,选择,插入,希尔,快速排序,归并排序,基数排序】超详细~~
  • (Matlab)使用竞争神经网络实现数据聚类
  • (附表设计)不是我吹!超级全面的权限系统设计方案面世了
  • (介绍与使用)物联网NodeMCUESP8266(ESP-12F)连接新版onenet mqtt协议实现上传数据(温湿度)和下发指令(控制LED灯)
  • (一)u-boot-nand.bin的下载
  • (译) 函数式 JS #1:简介
  • (转载)PyTorch代码规范最佳实践和样式指南
  • (自用)learnOpenGL学习总结-高级OpenGL-抗锯齿
  • ******之网络***——物理***
  • ***测试-HTTP方法
  • .net 逐行读取大文本文件_如何使用 Java 灵活读取 Excel 内容 ?
  • .net安装_还在用第三方安装.NET?Win10自带.NET3.5安装
  • .NET面试题解析(11)-SQL语言基础及数据库基本原理
  • @reference注解_Dubbo配置参考手册之dubbo:reference
  • @我的前任是个极品 微博分析
  • [ 蓝桥杯Web真题 ]-布局切换
  • []指针
  • [AIR] NativeExtension在IOS下的开发实例 --- IOS项目的创建 (一)
  • [APIO2015]巴厘岛的雕塑
  • [ASP]青辰网络考试管理系统NES X3.5
  • [C#]winform部署yolov9的onnx模型
  • [C++]高精度 bign (重载运算符版本)
  • [C++]运行时,如何确保一个对象是只读的