Javascript AsyncStorage getItem方法调用缓慢

Javascript AsyncStorage getItem方法调用缓慢,javascript,reactjs,react-native,Javascript,Reactjs,React Native,我已经使用React Native AsyncStorage创建了一个身份验证流。我已经在useeffect状态中调用了getItem方法,钩子和令牌保存。根据令牌,用户是否会进入仪表板。但当我打开应用程序时,在useEffect中调用hook getItem的速度非常慢,当时登录屏幕是可见的,在一段时间后,用户移动到仪表板,所以速度非常慢。我如何解决这个问题 代码: const-App=()=>{ const[userlogin,setUserLogin]=useState(false); c

我已经使用React Native AsyncStorage创建了一个身份验证流。我已经在useeffect状态中调用了getItem方法,钩子和令牌保存。根据令牌,用户是否会进入仪表板。但当我打开应用程序时,在useEffect中调用hook getItem的速度非常慢,当时登录屏幕是可见的,在一段时间后,用户移动到仪表板,所以速度非常慢。我如何解决这个问题

代码:

const-App=()=>{
const[userlogin,setUserLogin]=useState(false);
const[token,setToken]=useState(“”);
const authContext=useMoom(
() => ({
签名:()=>{
},
注销:()=>{
},
}),
[]
);
const getToken=async()=>{
AsyncStorage.getItem(@Token”)。然后((res)=>{
const-token=JSON.parse(res);
console.log(“1”,令牌);
setToken(token);
});
};
useffect(()=>{
getToken();
}, []);
console.log(“2”,令牌);
返回(
{token&&token?:}
);
};
导出默认应用程序;
AsyncStorage.getItem()是一个异步任务,就像API调用一样。只需添加一个加载程序屏幕即可

    <NavigationContainer>
      <Stack.Navigator screenOptions={{headerShown: false}}>
        {authState.isLoading ? (
          <Stack.Screen name="Splash" component={Splash} /> // loader screen
        ) : authState.userToken == null ? (
          <Stack.Screen name="AuthNavigator" component={AuthNavigator} />
        ) : (
          <Stack.Screen name="MainNavigator" component={MainNavigator} />
        )}
      </Stack.Navigator>
    </NavigationContainer>

{authState.isLoading(
//装载机滤网
):authState.userToken==null(
) : (
)}
    <NavigationContainer>
      <Stack.Navigator screenOptions={{headerShown: false}}>
        {authState.isLoading ? (
          <Stack.Screen name="Splash" component={Splash} /> // loader screen
        ) : authState.userToken == null ? (
          <Stack.Screen name="AuthNavigator" component={AuthNavigator} />
        ) : (
          <Stack.Screen name="MainNavigator" component={MainNavigator} />
        )}
      </Stack.Navigator>
    </NavigationContainer>