Reactjs 反应导航-堆栈。导航器屏幕支柱不工作
下面的代码为两个组件创建了一个简单的堆栈导航器Reactjs 反应导航-堆栈。导航器屏幕支柱不工作,reactjs,react-navigation,react-props,react-navigation-stack,Reactjs,React Navigation,React Props,React Navigation Stack,下面的代码为两个组件创建了一个简单的堆栈导航器Login和List。我在带有导航器(App.js)的文件中有一个useState钩子,我想将setter和getter传递给每个屏幕。我曾尝试在堆栈导航器上使用screenProps,但在记录传递给每个组件的道具后,变量不会出现 TL;DR我需要将道具从Stack.Navigator传递到每个屏幕 <NavigationContainer> <Stack.Navigator screenProps={{setVariable,
Login
和List
。我在带有导航器(App.js
)的文件中有一个useState
钩子,我想将setter和getter传递给每个屏幕。我曾尝试在堆栈导航器上使用screenProps
,但在记录传递给每个组件的道具后,变量不会出现
TL;DR我需要将道具从Stack.Navigator
传递到每个屏幕
<NavigationContainer>
<Stack.Navigator screenProps={{setVariable, variable}}>
<Stack.Screen
name="Login"
component={Login}
options={navOptions}
/>
<Stack.Screen
name="List"
component={List}
options={navOptions}
/>
</Stack.Navigator>
</NavigationContainer>
您需要使用React的上下文API
// MyContext.js
export const MyContext = React.createContext();
//App.js
const context=React.useMoom(()=>({
setVariable,
变量
}),[变量];
返回(
);
//Home.js
常量变量=React.useContext(MyContext);
您需要使用React的上下文API
// MyContext.js
export const MyContext = React.createContext();
//App.js
const context=React.useMoom(()=>({
setVariable,
变量
}),[变量];
返回(
);
//Home.js
常量变量=React.useContext(MyContext);