[英]Is there a cleaner way to stop React rendering on initial load?
因此,我的react類會調用json響應,然后進行渲染。
但是按現狀,該類將在初始加載時呈現,然后在響應返回時再次呈現。
為了解決這個問題,我必須這樣做-
componentDidMount: function() {
axios.get.......
.then(res => {
const jobs = res.data;
this.setState({ jobs });
});
},
render: function () {
if (Object.keys(this.state.jobs).length == 0)
{
}
else {
return (
<div>
{this.state.jobs.data.map(function (ob) {
return <li key={ob.id}>{ob.name}</li>
})}
</div>
)
}
return null;
}
});
有沒有更好的方法可以做到這一點? 不使用if語句?
React總是必須在初始加載中進行渲染。 因此,您只需要像以前一樣渲染null。 明智的代碼,也許你可以寫
return this.state.jobs.data ? <YourTemplate /> : null;
比較干凈。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.