DeletantCode
@DeletantCode
The harder I work, the luckier I get.

Как правильно принять данные от апи и пройтись map?

Добрый день. Обучаюсь, отправляю запрос на получение данных [] апи и пытаюсь их с помощью метода мап отрисовать в реакте, но пишет что Cannot read property 'map' of undefined. В консоль проверял данные приходят. В чем проблема ?

import React from 'react'

class Grivna extends React.Component{
   
    constructor(props){
        super(props);
        this.state ={
            items: []
        }
    }
    componentDidMount(){
        fetch(`https://bank.gov.ua/NBUStatService/v1/statdirectory/exchange?json`)
        .then(res => res.json())
        .then(
            (result) => {
                this.setState({
                    items: result.items
                })
            }
        )
    }
    

    render(){
        debugger
        const {items} = this.state;

            return(
                <ul>
                    {items.map(item => (
                        <li key={item.id}>{item.txt} {item.cc} {item.exchangedate}</li>
                    ))}
                </ul>
            )
        }
    }   

export default Grivna
  • Вопрос задан
  • 158 просмотров
Решения вопроса 2
@developerd76
componentDidMount(){
        fetch(`https://bank.gov.ua/NBUStatService/v1/statdirectory/exchange?json`)
        .then(res => res.json())
        .then(
            (result) => {
                this.setState({
                    items: result
                })
            }
        )
    }
Ответ написан
Комментировать
@Che603000
c 2011 javascript
В result уже содержатся данные из апи []

componentDidMount(){
        fetch(`https://bank.gov.ua/NBUStatService/v1/statdirectory/exchange?json`)
        .then(res => res.json())
        .then(
            (result) => {
                this.setState({
                    items: result // !!!
                })
            }
        )
    }
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы