Я настраиваю приложение, которое использует react-native-navigation
. Есть некоторые значения, которые я бы хотел сохранить при навигации. Когда я вручную запускаю навигацию, я могу передать их как параметры в вызове на navigate
. Но когда я использую встроенную навигацию, предоставляемую плагином, я не могу установить это как параметр.
Как лучше всего использовать API-токен для всего моего приложения без необходимости хранить его в AsyncStorage? Я упускаю какое-то очевидное решение?
My App.js:
const AppStack = createBottomTabNavigator({
Members: createStackNavigator({
MemberList: MemberList,
AddMember: NewMember,
},{
mode: 'card',
initialRouteName: "MemberList"
}),
Scan: Scanner
});
const AuthStack = createStackNavigator({ Login: Login });
export default createAppContainer(
createSwitchNavigator(
{
AuthLoading: AuthLoadingScreen,
App: AppStack,
Auth: AuthStack
},
{
initialRouteName: "AuthLoading"
}
)
);
Стек аутентификации заботится об аутентификации, после получения токена API я вручную перенаправляю в приложение, используя этот подход:
this.props.navigation.navigate({
routeName: 'App',
params: { auth_token: data.auth_token },
action: this.props.navigation.navigate({
routeName: 'MemberList',
params: { auth_token: data.auth_token}
})
});
Проблема возникает, когда я начинаю навигацию с нижней Nav, потому что это решается плагином, похоже, что постоянные параметры отсутствуют.