2 回答

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超9個(gè)贊
SampleContext將您的文件更改為:
import React from 'react';
const SampleContext = React.createContext();
const SampleContextProvider = ({children}) => {
return (
<SampleContext.Provider value={{a: 'a', b: 'b'}}>
{children}
</SampleContext.Provider>
);
};
export {SampleContext, SampleContextProvider};
我在提供者值道具中定義了您的默認(rèn)上下文值,而不是作為createContext.
提供者的 value 屬性會覆蓋在createContext. 這意味著如果您不設(shè)置value是否使用提供程序,則默認(rèn)值將覆蓋為未定義。

TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超5個(gè)贊
在您的歡迎屏幕中嘗試執(zhí)行此操作
import {SampleContext} from '../provider/SampleContext';
const {a,b}= useContext(SampleContext);
console.log("contextx=> ", a+' '+b);
我認(rèn)為解構(gòu)該值可能會幫助您確認(rèn) sampleContext 是否具有上下文值!
添加回答
舉報(bào)