延迟加载和对象数组而不是组件?

时间:2019-03-29 04:03:39

标签: reactjs lazy-loading material-ui

我正在用material-ui做一个reactjs应用程序,我已经看到了很多reacjs延迟加载组件的示例。.但是我有一个来自material-ui的GridListTile对象数组,我将它们加载到Gridlist组件中,这个GridListTile数组是调用array.map()的结果。

我已经尝试过将Suspense放入GridList和array.map()中,我在lazy()调用内返回每个GridListTile,但是显然它不能正常工作,因为它需要一个组件等等。

这是我的GridList:

           <Paper style={{ margin: 25, padding: 25 }}>
            <GridList
              spacing={10}
              cols={5}
              cellHeight="auto"
            >
              <Suspense fallback={<div>Loading...<div>}
              {this.state.collectionList}
              </Suspense>
            </GridList>
          </Paper>

这是我的array.map(),其中我返回this.state.collectionList的内容

            const tempCollectionList = res.data.map(item => {
            return (
              lazy.(() = (
              <GridListTile key={item._id}>
                  <img
                    src={item.pathToImage}
                    alt={item.title}
                  />
              </GridListTile>
            ));
          });
          this.setState({
            collectionList: tempCollectionList
          });

但是我只是收到错误,很多东西,例如那些没有响应组件的错误以及很多其他错误。.点是它没有加载,出于显而易见的原因,延迟加载仅适用于组件

但是如何实现对象数组的延迟加载? 我在this.state.collectionList中有100多个磁贴。

0 个答案:

没有答案