我为我的本机应用程序构建了一个CommentList组件。
我有一个带有嵌套注释的json,我从中解析并呈现一个注释组件列表,其中包含嵌套子注释组件。
问题是这种递归操作需要太长时间。
我想要做的是一次渲染一个嵌套的注释树,以便第一个嵌套的注释树在加载后立即显示,然后继续呈现其他注释。
目前我这样做:
return this.state.fetchedComments.map(comment => {
return <NestedComment key={comment.id} parent={comment} />;
});
等待直到创建每个评论组件,然后将它们全部呈现 - 这需要太长时间
答案 0 :(得分:1)
在react native(特别是大列表)中呈现列表时,不要使用map()函数输出列表,而是应该使用内置的列表组件作为本机。
如果您使用的是本机版本0.43或更高版本,那么您可以访问新的FlatList组件:https://facebook.github.io/react-native/docs/flatlist.html
如果没有,那么你将不得不使用ListView组件: https://facebook.github.io/react-native/docs/listview.html
我强烈推荐使用FlatList组件,设置起来要容易得多,将来最终会弃用ListView组件。