显示加载屏幕直到数据填充 - React&流星

时间:2016-05-15 01:20:36

标签: meteor reactjs

我尝试填充表格,只想在获取所有内容时显示数据。我想展示一个基本的" Loading ..."文本。目前我有这个:

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>
   );
}

这只是一个基本的例子,但是我从Names.find()获取了很多数据.fetch()......虽然看起来一旦mapData开始填充,数据将部分加载(显示可能是前几个项目,然后完成)。

我知道我没有正确地这样做。我只是想知道其他人如何正确地在React中显示进度条。

我考虑过只在componentDidMount中设置延迟,但这似乎不是一个很好的解决方案。

非常感谢任何帮助!

谢谢! Ť

1 个答案:

答案 0 :(得分:1)

Meteor.subscribe接受一个在订阅加载其数据后将被调用的回调。

请参阅:http://docs.meteor.com/#/full/meteor_subscribe