gpt4 book ai didi

javascript - 如何根据我获得的 API 数据创建项目列表?

转载 作者:行者123 更新时间:2023-12-01 00:36:53 25 4
gpt4 key购买 nike

我正在尝试创建从 API 获取的子类别列表并将其显示在应用程序中。问题是我不知道如何将数组(API)中的项目转换为列表项目。

componentDidMount(){
axios.get('/categories/' + this.props.match.params.id)
.then(response => {
console.log(response.data.children) //Array of strings

})
}

render(){

return(
<div className={classes.Showcategory}>
<h1>{this.props.match.params.id}</h1>
<li>Here I need for each string of the array a list item<li/>
</div>
);
}

最佳答案

您可以为组件定义状态变量。当您发出请求时,请更新状态。当状态更新时,您的组件将使用您想要的数据重新渲染。

试试这个:

constructor(props) {
super(props);

this.state = {
categories: []
};
}

componentDidMount() {
axios.get("/categories/" + this.props.match.params.id).then(response => {
console.log(response.data.children); //Array of strings
this.setState({ categories: response.data.children });
});
}

render() {
return (
<div className={classes.Showcategory}>
<h1>{this.props.match.params.id}</h1>
{this.state.categories.map((category, index) => (
<li key={index}>{category}</li>
))}
</div>
);
}

请注意React recommends that you don't use index as the key 。对于您的情况,如果 category 字符串是唯一的,请改用它们。

关于javascript - 如何根据我获得的 API 数据创建项目列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58049754/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com