首页 > 其他分享 >Vue3| 组合式 API——provide 和 inject

Vue3| 组合式 API——provide 和 inject

时间:2023-10-14 15:12:08浏览次数:43  
标签:count 顶层 const provide API inject 组件

作用和场景:顶层组件向任意的底层组件 传递数据和方法,实现 跨层组件通信

 

跨层传递普通数据 步骤:

1. 顶层组件通过 provide 函数提供数据

provide ( ' key ' ,  顶层组件中的数据 )

 

2. 底层组件通过 inject 函数获取数据

const  message = inject ( ' key ' )      // 'key':键名,与上一步的名字统一

 

跨层传递响应式数据 步骤:

1. 顶层组件通过 provide 函数提供数据

const  count = ref (100)

provide ( ' count ' ,  count )

 

2. 底层组件通过 inject 函数获取数据

const  count = inject ( ' count ' )      // 'key':键名,与上一步的名字统一

 

 

底层组件 不能直接修改 顶层组件传过来的数据,顶层组件需要给底层组件提供可以修改数据的函数

顶层组件:

provide ( ' changeCount ' ,  (newCount) => {

      count.value = newCount

})

底层组件:

const changeCount = inject ( ' changeCount ' )

const  ButtonClick = () => {

      changeCount (666)

}

 

标签:count,顶层,const,provide,API,inject,组件
From: https://www.cnblogs.com/gagaya2/p/17764183.html

相关文章

  • 电商爬虫API快速入门指南
    电子商务爬虫API是一个公共数据爬虫API,旨在通过大多数电子商务网站收集大量实时本地化数据并搜索信息。这个数据收集工具作为一个值得信赖的解决方案,实现通过最复杂的电子商务网站收集公共信息。电子商务爬虫API适用于商业用例,诸如价格监控、产品目录映射、竞争对手分析。这份快速......
  • .NET 5 Web API 中JWT详细教程:保护你的Web应用
    第一部分:理解JWTJSONWebToken(JWT)是一种在不同系统之间传递信息的安全方式。它由三部分组成:头部(Header)、载荷(Payload)和签名(Signature)。头部包含加密算法和令牌类型等信息,载荷包含用户的信息,签名用于验证令牌的真实性。安装必要的包在开始之前,我们需要在你的项目中添加一些必要的Nu......
  • pycharm使用fastapi/uvicorn无法reload的问题
    省流pycharm的问题,建议控制台直接输uvicornmain:app--reload,而不是点击右上角的运行相关issuehttps://github.com/encode/uvicorn/issues/2000https://youtrack.jetbrains.com/issue/PY-60962/os.killpid-signal.CRTLCEVENT-ignored-when-running-python-program-from-Pych......
  • 提交代码遇到not allowed to push code git info detecting host provider for 网址解
    查看git出错信息>gitpush-uoriginandroidinfo:detectinghostproviderfor'https://AA.com/'...warning:-----------------SECURITYWARNING----------------warning:|TLScertificateverificationhasbeendisabled!|warning:---------------......
  • Vue3| 组合式 API 下的 子传父
    步骤:1.子组件内部通过emit方法触发事件①通过defineEmits编译器宏生成emit方法<script setup>const emit= defineEmits(['get-message'])  //get-message:可以触发的事件</script>②触发自定义事件,并传递参数<script setup>const emit= define......
  • Vue3| 组合式 API 下的父传子
    步骤:一、父给子传写死的值1.父组件中给子组件以添加属性的方式传值<script setup>import sonComVue from './son-com.vue'  //局部注册</script> <template><sonComVue message="黑马程序员"></sonComVue></template>2.子组件内部通过pro......
  • P7600 [APIO2021] 封闭道路
    P7600[APIO2021]封闭道路APIO从CF搬的题,模拟赛又搬了一遍/jy。首先考虑暴力怎么做,即做\(n\)次树形DP,设\(f_{i,0}\)表示强制删掉\((i,fa_i)\)这条边的最小代价,\(f_{i,1}\)表示强制保留\((i,fa_i)\)这条边的最小代价。对于一个点\(u\),在限制度数为\(x\)时,对于......
  • Vue3| 组合式API——computed 计算属性函数
    计算属性基本思想和Vue2的完全一致,组合式API下的计算属性只是修改了写法 核心步骤:1.导入computed函数<scriptsetup>import{computed}from'vue'</script>2.执行函数在回调参数中return基于响应式数据做计算的值,用变量接收<scriptsetup>import{com......
  • Vue3| 组合式API——reactive 和 ref 函数
    Vue中默认的数据并不是响应式的,如果我们希望数据是响应式的,则需要通过reactive或者ref进行处理。 reactive():作用:接收对象类型的数据作为参数传入并返回一个响应式对象reactive不能处理简单类型的数据 reactive使用步骤:1.在<scriptsetup>里,从vue包中导入......
  • Apipost连接数据库详解
    Apipost提供了数据库连接功能,在接口调试时可以使用数据库获取入参或进行断言校验。目前的Apipost支持:Mysql、SQLSever、Oracle、Clickhouse、达梦数据库、PostgreSQL、Redis、MongoDB8种数据库的连接操作新建数据库连接:在「项目设置」-「公共资源维护」-「连接数据库」中配置需......