Получение ошибки с помощью Promise.all в реакции - PullRequest
0 голосов
/ 26 сентября 2018

Я использовал axios.get для своих запросов API, но я проверял, как получить несколько запросов API для componentDidMount.Я искал это и использовал код других людей, и решил, что Promise.all - путь.Я определенно могу ошибаться, и не против вернуться к этому.Использование метода axios.spread выдает ошибку, и Promise.all также выдает ту же ошибку.Есть идеи, почему это не работает?

import React from "react";
import ReactDOM from "react-dom";
import axios from 'axios'
import { Table } from './Table'

export class DataList extends React.Component {

    state = {
        articles: [],
        google: []
    }
    componentDidMount() {
        Promise.all([
            ('http://127.0.0.1:8000/api/portblog/'),
            ('http://www.google.com')
        ])
        .then(([res, googleRes]) => {
            this.setState({
                articles: res.data,
                google: googleRes
            })
            console.log(res.data)
        })
    }
    render() {
        return(

            <div>
            <Table key={this.state.articles.id} 
                   articles={this.state.articles} />
            </div>
        )
    }
}
export default DataList

Редактировать: Ошибка:

DataList.js?a7e0:29 Uncaught TypeError: Cannot read property 'id' of undefined

1 Ответ

0 голосов
/ 26 сентября 2018

Попробуйте это.Я не вижу, как вы отправляете запросы ajax на эти URL.

    Promise.all([
        axios.get('http://127.0.0.1:8000/api/portblog/'),
        axios.get('http://www.google.com')
    ])
...