2016-05-15 3 views
0

Ich versuche eine Tabelle aufzufüllen und möchte nur die Daten anzeigen, wenn alles abgerufen wurde. Ich würde gerne einen einfachen "Loading ..." Text zeigen. Zur Zeit habe ich dies:.Ladebildschirm anzeigen, bis die Daten gefüllt sind - React & Meteor

getNames() { 
    return Names.find().fetch(); 
} 

render() { 
    let mapData = this.getNames().map((name) => { 
     return <Name key={name.id} name={name} /> 
    }); 

    if (!mapData) { 
    return (<h1>Loading...</h1>); 
    } 

    return (
     <ul> 
     {mapData} 
     </ul> 
    ); 
} 

Dies ist nur ein einfaches Beispiel, aber ich packe eine Menge von Daten aus Names.find() holen() ... obwohl es scheint, dass einmal MapData beginnt bevölkert zu werden, Die Daten werden teilweise geladen (zeigen möglicherweise die ersten paar Elemente und schließen dann ab).

Ich weiß, dass ich das nicht richtig mache. Ich frage mich nur, wie andere Leute damit umgehen, in React einen Fortschrittsbalken zu zeigen.

Ich dachte über eine Verzögerung nur in ComponentDidMount, aber das scheint keine gute Lösung zu sein.

Jede Hilfe würde sehr geschätzt werden!

Danke! T

+0

Wo Sie Ihre Sammlungen abonniert? – sheeldotme

Antwort

Verwandte Themen