React通過useContext特性實現(xiàn)組件數(shù)據(jù)傳遞
我們來說一個屬性 useContext
這個確實用的挺少的 不過 還是簡單做一下
打開我們的react項目 在src下創(chuàng)建一個文件夾 components 因為他是兩個 甚至多個組件之間使用的
然后在components下創(chuàng)建兩個組件 分別叫 dom.jsx dom1.jsx 命名命的比較不規(guī)范 不過本身只是做個案例 懶得做那么規(guī)范了
dom.jsx 我們作為父組件 編寫代碼如下
import React from "react";
import Daom1 from "./dom1";
export const MyComponent = React.createContext();
const dom = () => {
return (
<div>
<MyComponent.Provider value="hello dom1">
<Daom1 />
</MyComponent.Provider>
</div>
);
};
export default React.memo(dom);這里 我們通過MyComponent.Provider中vulue 定義了個數(shù)據(jù) 值是字符串類型的 hello dom1
然后調(diào)用了 我們的 dom1 組件 作為自己的子組件
然后 我們dom1 代碼編寫如下
import React, { useContext } from "react";
import { MyComponent } from "./dom";
const Dom1 = () => {
const contextValue = useContext(MyComponent);
return (
<div>
<h1>{contextValue}</h1>
</div>
);
};
export default React.memo(Dom1);獲取 同目錄dom1組件中導(dǎo)出的 MyComponent 對象 通過useContext輸出其中的值
然后 在App根組件中調(diào)用dom.jsx組件
項目運(yùn)行結(jié)果如下

可以看到 dom MyComponent.Provider value 中定義的值 然后在 dom1中獲取 在h1中顯示 整個過程非常完美 不過這個數(shù)據(jù)共享方案老實說 挺撈的 用的會少一些 因為限制很多 也不知道實用
到此這篇關(guān)于React通過useContext特性實現(xiàn)組件數(shù)據(jù)傳遞的文章就介紹到這了,更多相關(guān)React useContext數(shù)據(jù)傳遞內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
React18?useState何時執(zhí)行更新及微任務(wù)理解
這篇文章主要為大家介紹了React18?useState何時執(zhí)行更新及微任務(wù)理解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-11-11
React中使用Workbox進(jìn)行預(yù)緩存的實現(xiàn)代碼
Workbox是Google Chrome團(tuán)隊推出的一套 PWA 的解決方案,這套解決方案當(dāng)中包含了核心庫和構(gòu)建工具,因此我們可以利用Workbox實現(xiàn)Service Worker的快速開發(fā),本文小編給大家介紹了React中使用Workbox進(jìn)行預(yù)緩存的實現(xiàn),需要的朋友可以參考下2023-11-11
利用React-router+Webpack快速構(gòu)建react程序
目前 React、Webpack 等技術(shù)如火如荼,你是不是還在愁苦如何把這些雜亂的知識怎么學(xué)習(xí)一下,開啟一段新的前端開發(fā)之路呢?那么這篇將給大家運(yùn)用示例代碼詳細(xì)的介紹使用React-router和Webpack如何快速構(gòu)建一個react程序,感興趣的朋友們下面來一起看看吧。2016-10-10
基于PixiJS實現(xiàn)react圖標(biāo)旋轉(zhuǎn)動效
PixiJS是一個開源的基于web的渲染系統(tǒng),為游戲、數(shù)據(jù)可視化和其他圖形密集型項目提供了極快的性能,這篇文章主要介紹了用PixiJS實現(xiàn)react圖標(biāo)旋轉(zhuǎn)動效,需要的朋友可以參考下2022-05-05

