javascript - 如何将 map() 与来自 axios 响应的数据一起使用?
问题描述
我正在使用 axios 从服务器获取数据并将其存储在状态中。当我这样做时state.map( post => {console.log(post)} )
,我什么也看不到。
我正在使用Express
,Mongoose
和.NextJS
Axios
我axios
用来从服务器获取数据并将其存储在this.state.posts
. 当我这样做console.log(this.state.posts)
时componentDidMount
,它会完美地记录帖子数组。但是当我做同样的
事情时,render(){ return ( /*here*/)}
它什么也没显示。
这会记录所有帖子而没有错误
async componentDidMount() {
const { data } = await axios.get('/api/all')
this.setState({posts: data, isLoading: false})
console.log(this.state.posts)
}
但这不会记录任何内容 -
render() {
return({
posts.map( post => {
<Post title={post.title} />
})
})
}
解决方案
{
posts.map( post => {
return <Post title={post.title} />
})
}
也许它有效。
推荐阅读
- python - 如何避免舍入浮点的python格式化
- pyparsing - 带有 Optional() 子类的 Pyparsing 语法
- python - 两个轴上的 Bbox 故障
- android - developer.android.com 或任何网站的暗模式?
- wordpress - 重写规则以使用查询字符串简化路径
- c# - C# 拆分 XML InnerText
- html - chrome 和 edge 上的滚动条,但 Internet Explorer 上没有
- assembly - 如何在汇编程序中检查数字是偶数还是奇数
- javascript - 如何将网站上的原始文本保存为所有访问该网站的用户都相同?
- c# - 如何从新窗口中提取数据。WPF MVVM