javascript-React native-FlatList中包含静态和动态元素

我正在尝试创建一个类似于Twitter的“发布推文”列表的FlatList,其中显示了设备图库中从“相机”到“照片”的选项.

javascript-React native-FlatList中包含静态和动态元素

我不确定如何先将2-3个元素作为静态元素,然后通过CameraRoll或其他方式添加动态元素.

我想到的第一个解决方案是创建一个数组,该数组的前2-3个元素为包含“ Camera”,“ Gallery”等的文本,然后将该数组与动态数组连接起来,并通过renderItem()函数处理所有内容,针对“静态元素”案例显示不同的视图.但我希望有一种更好的方法可以做到这一点.这个你能帮我吗.

解决方法:

我认为最好和最简单的选择是按照概述的方式进行操作:将“静态”数组与“动态”数组连接在一起,并分别处理静态数组.

class Options extends React.Component {
  renderItem({ item, index }) {
    if (index === 0) {
      return <Camera />;
    } else if (index === 1) {
      return <Live />;
    } else {
      return <GeneralItem {...item} />;
    }
  }

  render() {
    const statics = [{ text: 'Camera' }, { text: 'Live' }];

    return (
      <FlatList
        data={statics.concat(this.props.data)}
        renderItem={this.renderItem}
      />
    );
  }
}
上一篇:javascript-期望的实例道具与React 16中的记忆道具匹配


下一篇:javascript-传递整数数组以创建新的日期不起作用