Map API JSON fetch

7d7tgy0s  于 2023-08-08  发布在  其他
关注(0)|答案(1)|浏览(120)

我在将Laravel API的数据放入React中时遇到了问题,当执行fetch并带来数据时,JSON数据出现在控制台中没有问题,但当我想将它们放入表中列出它们时,出现错误并说我的.map不是一个函数,我希望你能帮助我。

import React from 'react';

class Crudcategories extends React.Component{

    state = {
        categories:[]
    }
    componentDidMount(){
        fetch("http://localhost:8000/api/categories")
        .then(response => response.json())
        .then(categoriesJson => this.setState({categories:categoriesJson}))
    }
    
    render(){
        const{categories} =this.state
        
        return(
            <div>
                <h1>Categories</h1>

                <br/>
                <table className="table table-striped table-border table-hover">
                    <thead>
                        <tr>
                            <th scope="col">#</th>
                            <th scope="col">Name</th>
                        </tr>
                        </thead>
                        <tbody>
                            {categories.map((category,i)=>
                            <tr key={i}>
                                <th scope="row">{i+1}</th>
                                <td>{category.name}</td>
                            </tr>
                            )}
                        </tbody>
                </table>
            </div>
        )
    }
}
export default Crudcategories

字符串
我试过改变我的取数,我的Map,但我不能解决它

f2uvfpb9

f2uvfpb91#

看起来像是在JSON对象上使用.map(),但这不会起作用,因为对象没有.map()函数。
尝试将JSON数据转换为对象数组,然后尝试.map()
范例:

const categoriasArr = Object.values(categorias).map(value => value);

字符串
然后使用categoriasArr.map()

相关问题