【发布时间】:2020-05-05 09:02:01
【问题描述】:
我正在关注 YouTube 上关于 useContext 的(视频)教程
从遗留的道具流切换到这个,我有点困惑 ProviderWrapper 中的孩子是什么以及为什么需要传入它。
如果 children 是 SomeComponent2,为什么 someObj 不使用 useContext 就不会单独作为一个 prop 出现?因为它是 ProviderWrapper 的包装器,它通过它的值传递它?
const SomeContext = createContext()
function ProviderWrapper ({children}) {
const someObj = { 'something': 'someValue' }
return <SomeContext.Provider value={{ someObj }}>{children}</SomeContext.Provider>
}
const SomeComponent2 = (props) => {
console.log('props', props)
const PropsFromProvider = useContext(SomeContext)
console.log('PropsFromProvider', PropsFromProvider)
return null
}
function App() {
return (
<ProviderWrapper>
<SomeComponent2 />
</ProviderWrapper>
);
}
【问题讨论】:
标签: reactjs react-hooks