Javascript 是否有更干净的方法停止初始加载时的React渲染?
因此,我的react类调用json响应,然后呈现 但目前,该类将在初始加载时呈现,然后在响应返回时再次呈现 为了避开这个问题,我必须这样做-Javascript 是否有更干净的方法停止初始加载时的React渲染?,javascript,reactjs,Javascript,Reactjs,因此,我的react类调用json响应,然后呈现 但目前,该类将在初始加载时呈现,然后在响应返回时再次呈现 为了避开这个问题,我必须这样做- componentDidMount: function() { axios.get....... .then(res => { const jobs = res.data; this.setState({ jobs }); }); }, r
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;
}
});
componentDidMount:function(){
axios.获取。。。。。。。
。然后(res=>{
const jobs=res.data;
this.setState({jobs});
});
},
渲染:函数(){
if(Object.keys(this.state.jobs).length==0)
{
}
否则{
返回(
{this.state.jobs.data.map(函数(ob)){
return{ob.name}
})}
)
}
返回null;
}
});
有更好的方法吗?如果不使用if语句,React始终必须在初始加载中呈现。因此,您只需要像以前一样渲染null。代码方面,也许你可以写
return this.state.jobs.data ? <YourTemplate /> : null;
返回this.state.jobs.data?:无效的
哪个更干净。React始终必须在初始加载时渲染。因此,您只需要像以前一样渲染null。代码方面,也许你可以写
return this.state.jobs.data ? <YourTemplate /> : null;
返回this.state.jobs.data?:无效的
哪个更干净。我会在if语句中返回null。我认为在渲染中使用if没有问题。初始呈现不会做任何事情,当您获取数据时,它将比较html并应用更改。
如果(!this.state.jobs)返回null;返回()
会稍微短一点,但在运行初始时间时没有问题。我会在if语句中返回null。我认为在渲染中使用if没有问题。初始呈现不会做任何事情,当您获取数据时,它将比较html并应用更改。如果(!this.state.jobs)返回null;返回()
会稍微短一点,但是在初始时间运行它没有什么问题。非常适合纯组件,或者非常适合纯组件或函数