gpt4 book ai didi

javascript - 为什么 setTimeout 返回数值

转载 作者:行者123 更新时间:2023-11-28 12:58:19 24 4
gpt4 key购买 nike

仅当后端没有任何内容时,我才尝试获取无列表项。现在,在加载时,在获取数据之前,我会看到加载微调器和无列表项

所以,我想我应该添加一个超时来处理这个问题,这样它只会在获取完成后才显示,并且没有项目

 getList() {
if(this.state.list.length != 0){
return (this.state.list.map(data => {
return <div data={data} key={data.id}/>
}))
}else{
return <div>No List items</div>
}
}

render() {
return (
<div>
<Spinner active={this.state.active} />
<div>{setTimeout(this.getList, 1000)}</div>
</div>
);
}
}

当我使用它时,我在浏览器上获取数字。 Spinner 的事件状态在 componentDidMount 上更改为 false

最佳答案

这就是 setTimeout 返回的内容:一个 id 号,如果您想取消超时,可以稍后使用它。

渲染方法是同步的。如果您想在没有数据的情况下不渲染任何内容,则可以让渲染返回 null。然后在 componentDidMount 中,执行您需要的任何异步工作,完成后调用 this.setState 更新状态并重新渲染(这次没有 null)

关于javascript - 为什么 setTimeout 返回数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52977501/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com