Проверьте существующий ключ в AsyncStorage
Я хочу отобразить правильный навигатор на основе AsyncStorage, я искал здесь, но всегда тот же результат:
const signedIn = async () => {
const token = await AsyncStorage.getItem('token');
if(token) {
return true;
} else {
return false;
}
}
Это всегда возвращает истину..
1 ответ
Функция SignIn возвращает обещание. Если вы вызываете функцию, как показано ниже, то каждый раз мы будем переходить к SCREEN1.
let response = signedIn();
if(response){
console.log("SCREEN1")
//Navigate to SCREEN 1
}else{
console.log("SCREEN2")
// Navigate to SCREEN 2
}
Вместо того, чтобы называть это так
signedIn().then((response)=>{
if(response){
console.log("SCREEN1")
//Navigate to SCREEN 1
}else{
console.log("SCREEN2")
// Navigate to SCREEN 2
}
})
Или таким образом {вызывающая функция должна быть асинхронной}
let response = await signedIn()
if(response){
console.log("SCREEN1")
//Navigate to SCREEN 1
}else{
console.log("SCREEN2")
// Navigate to SCREEN 2
}