首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

FlatList的renderItem不能识别"this“关键字

FlatList是React Native中的一个组件,用于展示一个可滚动的列表。它的renderItem属性用于定义每个列表项的渲染方式。在renderItem中,确实无法直接使用"this"关键字,因为它的作用域与组件的作用域不同。

为了解决这个问题,可以使用箭头函数来定义renderItem。箭头函数会继承父级作用域的this关键字,因此可以在箭头函数中访问到组件的实例。

下面是一个示例代码:

代码语言:txt
复制
import React, { Component } from 'react';
import { FlatList, Text, View } from 'react-native';

class MyComponent extends Component {
  constructor(props) {
    super(props);
    this.data = [
      { id: 1, name: 'Item 1' },
      { id: 2, name: 'Item 2' },
      { id: 3, name: 'Item 3' },
    ];
  }

  renderItem = ({ item }) => {
    return (
      <View>
        <Text>{item.name}</Text>
      </View>
    );
  };

  render() {
    return (
      <FlatList
        data={this.data}
        renderItem={this.renderItem}
        keyExtractor={(item) => item.id.toString()}
      />
    );
  }
}

export default MyComponent;

在上面的代码中,renderItem属性使用了箭头函数来定义渲染方式。这样就可以在箭头函数中访问到组件的实例,而不需要使用"this"关键字。

关于FlatList的更多信息,你可以参考腾讯云的文档:FlatList - 腾讯云文档

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的合辑

领券