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

Vue3使用provide和inject实现孙组件给爷组件传递数据

前言:

最近在研究gitHub中的一个项目并将与自己之前完成的项目进行结合,其中有一个功能是需要在孙组件将数据传递给爷组件,笔者研究后将使用总结如下:

具体步骤:

1.爷组件先定义一个空的函数传递给孙子

2.孙组件使用inject接收
3.孙组件在函数中调用爷爷传递过来的函数,并在()中传递要传递的数据
4.调用这个函数(也可以使用点击事件等方式触发)
5.爷组件在当初定义的空函数中获得孙组件传递过来的值tValue

爷组件:

<script lang="ts" setup>
import { ref, onMounted, provide } from "vue"
const tValue = ref("")
//1.爷组件先定义一个空的函数传递给孙子
provide("passValue", passValue)
//5.爷组件在当初定义的空函数中获得孙组件传递过来的值tValue
const passValue = (codeValue: string) => {tValue.value = value
}
console.log(tValue.value)
</script>

孙组件:

<script lang="ts" setup>
import { inject } from "vue"
const value = 2000;
//2.孙组件使用inject接收
const passValue = inject("passValue")
//3.孙组件在函数中调用爷爷传递过来的函数,并在()中传递要传递的数据
const sendValue = () => {passValue(value)
}
//4.调用这个函数(也可以使用点击事件等方式触发)
sendValue()
</script>

http://www.lryc.cn/news/377270.html

相关文章:

  • 昇思25天学习打卡营第1天|基本介绍及快速入门
  • C#.Net筑基-类型系统②常见类型
  • 【人机交互 复习】第5章 交互式系统的需求
  • 知识的补充
  • 微信小程序请求服务器报ERR_CONNECTION_RESET
  • SpringMVC:拦截Mybatis的mapper
  • MySQL查询性能优化解决方案
  • 系统安全(补充)
  • 腾讯云[HiFlow】| 自动化 -------HiFlow:还在复制粘贴?
  • 音视频入门基础:H.264专题(3)——EBSP, RBSP和SODB
  • 误删群晖NAS数据有什么找回的方法?
  • 【CRASH】freelist异常导致的异常地址访问
  • 【QT】C++ || 左值引用、右值引用、移动语义、完美转发
  • 【深度学习驱动流体力学】计算流体力学算例剖析与实现
  • Midjourney角色一致性如何控制两个人物
  • Python基础-引用参数、斐波那契数列、无极分类
  • 【MySQL统计函数count详解】
  • 大数据的发展,带动电子商务产业链,促进了社会的进步【电商数据采集API接口推动电商项目的源动力】
  • Python类中变量定义详解
  • c++ extern 关键字详解
  • 计算机网络:运输层 - TCP 流量控制 拥塞控制
  • Python学习打卡:day10
  • 新书速览|Ubuntu Linux运维从零开始学
  • [Qt的学习日常]--窗口
  • Vue发送http请求
  • 学习使用js和jquery修改css路径,实现html页面主题切换功能
  • (转)请介绍一下Redis的数据淘汰策略
  • APP自动化测试-Appium常见操作之详讲
  • 写给大数据开发:谈谈数仓建模的反三范式
  • Stable diffusion 3 正式开源