【发布时间】:2019-08-09 12:53:53
【问题描述】:
我尝试在渲染之前使用 axios 获取数据。我正在使用 axios 并在 ComponentDidMount 中获取数据。我也尝试进入 Component WillMount 但仍然无法解决这个问题我该如何解决????
我也尝试进入 Component WillMount 但仍然无法正常工作,我需要渲染之前的数据,因为我必须传递给另一个组件。 之后我放了一个按钮,从加载的网站几秒钟后它按预期工作
componentDidMount() {
axios
.get(
"https://us-central1-punjabi-music-downloader.cloudfunctions.net/getTracks"
)
.then(res => this.setState({ tracks: res.data }));
}
render() {
return (
<div>
<h1>Music tracks</h1>
{this.state.tracks[0].name}
</div>
);
}
我收到.name is not defined。
【问题讨论】:
-
为什么需要在渲染前获取数据,而不是在获取数据后重新渲染?我的意思是组件应该同时呈现“加载”和“加载”状态?