@WoopsWoops

Почему первый респонс null?

Есть простой запрос к api в action, который я выполняю в componentDidMount, потом в render проверяю консоль логом мой респонс, показывает такое, сперва null, потом подтягивается мой обьект с данными, но тут и проблема, что надо мапом пробежать по данным, когда делаю мне пишет что-то в духе - this.props.data.map is null, как это поправить? может я не в правильное время вызываю action?
  • Вопрос задан
  • 220 просмотров
Решения вопроса 2
@forevist
Front-End Developer
Не умею в React. Но.
Прочитав документацию понял что в целом как и в Vue всё.
Криты на map is not a function исправить легко - определите скелет this.props.data.map как указано в документации.

То что вы описали с консоль логом - вряд ли респонс, если запрос посылается один раз - то и респонс придет один раз. Просто изначально реакт отрисовывает то что есть а шаблоне, а уже как получит данные - обновляет его.
Ответ написан
maxfarseer
@maxfarseer
https://maxpfrontend.ru, обучаю реакту и компании
Алексей Самсонов дело говорит. Нужно идти по массиву данных, когда он есть, либо когда вместо него "начальное состояние" = пустой массив.
Судя по вашему вопросу, вам проще делать проверку, что если this.props.data.length есть, то рисуй шаблон, если нет - null

renderTemplate(data) {
  return data.map(item => .... )
}
render() {
 ...
{ this.props.data.length ? this.renderTemplate(this.props.data) : null }
 ...
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы