ich meine Komponente habe:React.js - saubere Art und Weise Laden/leere Zustände zu unterscheiden in Render
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
}
Extrem gekünstelt/Sandbox, aber dies ist die allgemeine Idee. Wenn Sie diese Komponente zum ersten Mal laden, wird der HTML-Status "Leer" angezeigt, da der Server noch keine Daten zurückgegeben hat.
Hat jemand einen Ansatz/einen React Way ™, um zu prüfen, ob tatsächlich Daten vorhanden sind oder ein Ladezustand angezeigt wird?
Der beste Weg, damit umzugehen, ist, Ihre App isomorph zu machen, so dass der HTML-Code vollständig auf der Seite geladen ist und sich intelligent anmeldet. Es ist definitiv nicht der einfachste Weg, aber das würde Ihre Seite mit einem Lade-Spinner verdecken und es mit etwas JS entfernen, sobald das DOM fertig ist. –