首页 > 解决方案 > React 从子组件访问变量

问题描述

我的应用程序有一个主布局,所有组件都在其中呈现,但是这个主布局需要从它的子组件访问变量PageTitle,我查看了反应文档并提出了反应上下文,但我想不通在这种情况下如何使用它,对不起,我是 React 新手。

每个由路由渲染的组件都有一个名为PageTitle的变量,MainLayout 应该使用这个变量在应用程序顶部渲染当前页面标题,这些都是功能组件。

<MainLayout>
    <Route path='/' exact component={HomePage} />
    <Route path='/invoice' exact component={Invoice} />
</MainLayout>

更新: 我可以创建一个上下文并像这样存储值,但我不知道如何在子组件中更改它。

另外我认为这有点矫枉过正,应该有更好的解决方案。

export const AppContext = React.createContext({ PageTitle: 'Home' });

<AppContext.Consumer>{value=>value.PageTitle}</AppContext.Consumer>

标签: javascriptreactjs

解决方案


推荐阅读