最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue3中provide和inject的使用

 更新時間:2021年07月01日 15:52:28   作者:平凡是最美蕩氣回腸  
provide和inject在Vue 2中已經(jīng)被廣泛應(yīng)用,不是新鮮API,3.0重新認(rèn)識一下它們兩個,本文重點(diǎn)給大家介紹vue3中provide和inject的使用,需要的朋友參考下吧

1.provide 和 inject 的講解

provide和inject可以實(shí)現(xiàn)嵌套組件之間進(jìn)行傳遞數(shù)據(jù)。
這兩個函數(shù)都是在setup函數(shù)中使用的。
父級組件使用provide向下進(jìn)行傳遞數(shù)據(jù);
子級組件使用inject來獲取上級組件傳遞過來的數(shù)據(jù);
需要注意的是:
1==>provide只能夠向下進(jìn)行傳遞數(shù)據(jù)
2==>在使用provide和inject的時候需從vue中引入

2.provide 和 inject 的使用

我們將創(chuàng)建2個組件
兒子組件ErZi.vue
孫子組件SunZI.vue
我們將在父級組件中向其子代傳遞數(shù)據(jù);
那么兒子、孫子組件都將會接受到;
并且在視圖上顯示出來

3.父組件

<template>
  <erzi-com></erzi-com>
</template>
<script lang="ts">
import ErZi  from "../components/ErZi.vue"
import {provide, ref} from "vue"
export default {
  name:"About",
  components:{
    'erzi-com':ErZi
  },
  setup(){
    let giveSunziData=ref({
       with:100,
       height:50,
       bg:'pink'
    })
    // 第一個參數(shù)是是共享數(shù)據(jù)的名稱(giveSunzi)
    // 第二個參數(shù)是共享的數(shù)據(jù)(giveSunziData)
    provide('giveSunzi',giveSunziData)
  }
}
</script>

父組件向其子代組件傳遞了一個對象
provide是在setUp這個組合APi中使用的
provide的使用方式:
provide('共享數(shù)據(jù)名稱',共享值)
共享值可以是字符串、數(shù)字、對象、數(shù)組

子組件在進(jìn)行接收到的時候;
let xxx=inject('共享數(shù)據(jù)名稱');

4.兒子組件

<template>
    <div>
      <h2>兒子組件</h2>
      <div>得到的值:{{getFaytherData}}</div>
    </div>
    <hr/>
    <sun-con></sun-con>
</template>
<script lang="ts">
import { defineComponent, inject } from 'vue';
import SunZI from "./SunZI.vue"
export default defineComponent({
  name: 'ErZi',
   components:{
     'sun-con':SunZI
   },
    setup(){
      let getFaytherData=inject('giveSunzi');
      return { getFaytherData }
    }
});
</script>

5.孫子組件

<template>
    <div>
         <h2>孫子組件</h2>
         <div>得到的值{{getYeYeData}}</div>
    </div>
</template>
<script lang="ts">
import { defineComponent,inject } from 'vue';
export default defineComponent({
   setup(){
     let getYeYeData=inject('giveSunzi');
    return { getYeYeData }
   }
});
</script>

6.效果圖

7.父組件可以傳遞多個rovide嗎?

有些時候,我們的父組件可能需要傳遞多個rovide;
因?yàn)槲覀兿胱寯?shù)據(jù)分開。
此時就需要傳遞多個rovide。
經(jīng)過實(shí)踐,父組件是可以傳遞多個rovide的?。。?!
這是沒有沒問題的;

但是個人并不推薦這樣處理
我們可以在傳遞的時候?qū)⒍鄠€數(shù)據(jù)進(jìn)行一次組裝;
組裝好了之后再進(jìn)行傳遞

8.rovide和inject的引用場景

當(dāng)父組件有很多數(shù)據(jù)需要分發(fā)給其子代組件的時候,
就可以使用provide和inject。

到此這篇關(guān)于vue3中provide和inject的使用的文章就介紹到這了,更多相關(guān)vue provide和inject使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vxe-table 實(shí)現(xiàn)行高拖拽功能示例詳解

    vxe-table 實(shí)現(xiàn)行高拖拽功能示例詳解

    vxe-table實(shí)現(xiàn)行高拖拽功能,需更新到最新版本,通過row-config.resizable和row-resize啟用,多列允許觸發(fā)行高拖拽時,通過row-resize指定任意列,感興趣的朋友跟隨小編一起看看吧
    2025-01-01
  • 教你三分鐘掌握Vue過濾器filters及時間戳轉(zhuǎn)換

    教你三分鐘掌握Vue過濾器filters及時間戳轉(zhuǎn)換

    這篇文章教你三分鐘掌握Vue過濾器filters及時間戳轉(zhuǎn)換,本文將結(jié)合時間戳轉(zhuǎn)換的例子帶你快速了解filters的用法,需要的朋友可以參考下
    2023-03-03
  • Vue3.0靜態(tài)文件存放路徑與引用方式

    Vue3.0靜態(tài)文件存放路徑與引用方式

    這篇文章主要介紹了Vue3.0靜態(tài)文件存放路徑與引用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • vue.js實(shí)現(xiàn)刷新當(dāng)前頁面的方法教程

    vue.js實(shí)現(xiàn)刷新當(dāng)前頁面的方法教程

    這篇文章主要給大家介紹了關(guān)于vue.js實(shí)現(xiàn)刷新當(dāng)前頁面的方法教程,文中給出了詳細(xì)的示例代碼供大家參考學(xué)習(xí),對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面跟著小編一起來學(xué)習(xí)學(xué)習(xí)吧。
    2017-07-07
  • element-ui動態(tài)級聯(lián)選擇器回顯問題詳解(二十多行代碼搞定)

    element-ui動態(tài)級聯(lián)選擇器回顯問題詳解(二十多行代碼搞定)

    大家在使用element-ui的時候肯定會遇到這樣一個問題,就是在你使用級聯(lián)選擇器的回顯問題,下面這篇文章主要給大家介紹了關(guān)于element-ui動態(tài)級聯(lián)選擇器回顯問題的相關(guān)資料,需要的朋友可以參考下
    2023-03-03
  • Vue3實(shí)現(xiàn)Message消息組件示例

    Vue3實(shí)現(xiàn)Message消息組件示例

    在大多數(shù) web 產(chǎn)品中,全局的 Message 組件占有較大的使用場景,本文主要介紹了Vue3實(shí)現(xiàn)Message消息組件示例,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-06-06
  • Vue打包部署到Nginx時,css樣式不生效的解決方式

    Vue打包部署到Nginx時,css樣式不生效的解決方式

    這篇文章主要介紹了Vue打包部署到Nginx時,css樣式不生效的解決方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • Vue和React中快速使用Electron的簡單教程

    Vue和React中快速使用Electron的簡單教程

    Electron也可以快速地將你的網(wǎng)站打包成一個原生應(yīng)用發(fā)布,下面這篇文章主要給大家介紹了關(guān)于Vue和React中快速使用Electron的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-05-05
  • Vue3中使用vant的踩坑實(shí)戰(zhàn)日記

    Vue3中使用vant的踩坑實(shí)戰(zhàn)日記

    Vant是有贊前端團(tuán)隊(duì)開源的移動端組件庫,于2017年開源,已持續(xù)維護(hù)4年時間,下面這篇文章主要給大家介紹了關(guān)于Vue3中使用vant的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2022-10-10
  • vue electron應(yīng)用調(diào)exe程序的實(shí)現(xiàn)步驟

    vue electron應(yīng)用調(diào)exe程序的實(shí)現(xiàn)步驟

    這篇文章主要介紹了vue electron應(yīng)用調(diào)exe程序的實(shí)現(xiàn)步驟,用Python寫了一個本地服務(wù)編譯成exe程序,在electron程序啟動后,自動執(zhí)行exe程序,文中有詳細(xì)的代碼示例供大家參考,需要的朋友可以參考下
    2024-02-02

最新評論

清流县| 吕梁市| 克东县| 桐梓县| 泾阳县| 蓬莱市| 周宁县| 宜章县| 长治县| 兰考县| 怀化市| 阜康市| 高邑县| 藁城市| 阿城市| 霍邱县| 姜堰市| 扎鲁特旗| 稻城县| 富源县| 澄江县| 遵义县| 绩溪县| 岚皋县| 十堰市| 黑河市| 新安县| 大悟县| 曲水县| 肥乡县| 沂南县| 菏泽市| 开平市| 宜城市| 宝应县| 清丰县| 平泉县| 积石山| 澄江县| 绍兴市| 富宁县|