【发布时间】:2021-03-12 21:15:45
【问题描述】:
我正在尝试获取静态 JSON 文件的内容并将其显示在 react.js 中。我的代码基于Here 给出的示例 代码可以编译,但是当我在浏览器中打开页面时,我收到以下错误消息:
TypeError: Cannot read property 'data' of null
这是我的组件:
import React, { Component } from 'react';
class UserList extends Component {
async getData(){
const res = await fetch('/static/users.json');
const data = await res.json();
console.log("Got Data : " + data.length);
return this.setState(
{data:data}
);
}
componentDidMount()
{
this.getData();
}
render(){
return (
<ul>{this.state.data.map(item => <li>{item.title}</li>)} </ul>
)
}
}
export default UserList;
【问题讨论】:
-
没有初始化状态的构造函数
-
我认为您正在返回
setState函数,但实际上并未调用它。您可以从异步函数中运行setState,因此只需删除return。
标签: reactjs