【发布时间】:2020-05-07 18:42:37
【问题描述】:
在我的React Native 应用程序中,我使用React Navigation 5 并尝试将用户路由到身份验证堆栈,如果用户未通过身份验证,即AsyncStorage 中没有access_token。
我很困惑的是如何从AsyncStorage 获取令牌,因为它是一个异步过程。我似乎无法在我的App 组件中调用await,即如果我尝试它会给我一个错误,如果我不await 它,那么我会得到一个promise。
如何使用React Navigation 5 实现此功能?
这是我的App 组件:
const App = () => {
const authenticatedUser = AsyncStorage.getItem("access_token");
return (
<Provider store={store}>
<NavigationContainer>
{
authenticatedUser !== null || typeof authenticatedUser !== "undefined"
? <RootNavigator />
: <AuthNavigator />
}
</NavigationContainer>
</Provider>
);
};
export default App;
【问题讨论】:
-
您是否尝试过使用钩子和异步回调来获取令牌以及一些加载状态的组合?
标签: react-native react-navigation