【发布时间】:2015-06-22 22:45:07
【问题描述】:
我有我的组件:
getInitialState() {
return {
items: []
};
},
componentDidMount() {
// make remote call to fetch `items`
this.setState({
items: itemsFromServer
})
},
render(){
if(!this.state.items.length){
// show empty state
}
// output items
}
极度人为/沙盒,但这是一般的想法。首次加载此组件时,您会看到“空状态”HTML 的闪烁,因为服务器尚未返回任何数据。
有没有人有一种方法/一种 React Way™ 来处理是否实际上没有数据与显示加载状态?
【问题讨论】:
-
处理这个问题的最好方法是让你的应用程序同构,这样 html 就会完全加载到页面上并智能地附加自身。不过,这绝对不是最简单的方法,那就是使用加载微调器遮盖您的页面,并在 DOM 准备好后使用一些 JS 将其删除。
标签: javascript reactjs