Можете ли вы сделать метод render () в асинхронном React Native? - PullRequest
0 голосов
/ 05 февраля 2019

У меня есть компонент React Native, который должен извлечь объект из Async Storage для рендеринга.Что-то вроде этогоне пытайтесь возвращать объект до тех пор, пока объект «data» не будет возвращен из Async Storage.Однако, когда я использую «async render ()», я получаю «Нарушение инварианта: объекты недопустимы как дочерний элемент React».

Какие-либо советы?

1 Ответ

0 голосов
/ 05 февраля 2019

Нет необходимости, вам нужен условный рендеринг для чего-то подобного.

_retrieveData = async () => {
  try {
    const value = await AsyncStorage.getItem('data');
    if (value !== null) {
      // We have data!!
      return (
          <View>{value}</View>
      );
    }
  } catch (error) {
    // Error retrieving data
  }
};

Затем в функции рендеринга вызовите его.

render() {
  return (
    {this._retrieveData()}
  )
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...