реагировать на исходное ленивое исходное состояние из асинхронного хранилища - PullRequest
2 голосов
/ 22 января 2020

Я пытаюсь получить строку из asyncStorage и установить ее в качестве исходного состояния в функциональном компоненте. Я нашел в документации, что мы можем предоставить такую ​​функцию, как начальное состояние. Я попробовал некоторые решения с asyncStorage и sqlite и не получил результатов. Это некоторый код, Что не так и есть ли другое решение для хранения активной темы в хранилище.

const retrieveData = async () => {
  try {
    const value = await AsyncStorage.getItem("theme");
    return value;
  } catch (error) {}
};

const [isTheme, setIsTheme] = useState(retrieveData);

useEffect(() => {
  AsyncStorage.setItem("theme", isTheme);
}, [isTheme]);

1 Ответ

0 голосов
/ 22 января 2020

Я думаю, что retrieveData все еще обещает. Вы должны получить значение, выполнив await (retrieveData)

...