【发布时间】:2020-11-22 08:05:22
【问题描述】:
我实现了一个带有粘性标头的 FlatList,它从 Content.json 获取数据。
但是当我实现搜索功能时,出现以下错误。
【问题讨论】:
标签: javascript reactjs react-native object search
我实现了一个带有粘性标头的 FlatList,它从 Content.json 获取数据。
但是当我实现搜索功能时,出现以下错误。
【问题讨论】:
标签: javascript reactjs react-native object search
了解您想要实现的目标,您应该:
<FlatList
data={filteredContent}
renderItem={this.renderContent}
keyExtractor={(item) => item.name}
stickyHeaderIndices={this.state.stickyHeaderIndices}
/>
然后,在你的renderContent:
renderContent = ({ item }) => {
const content = item
if (content.header) {
return (
<ListItem itemDivider>
<Body>
<Text style={styles.headerStyle}>{content.name}</Text>
</Body>
</ListItem>
);
} else if (!content.header) {
return (
<ListItem style={{marginLeft: 0}}>
<Body>
<Text>{content.name}</Text>
</Body>
</ListItem>
);
}
};
请记住,函数 renderItem 在对象内部为您提供了一个 item,并且它具有该名称,因此您不能仅将其用作 content。
【讨论】:
TypeError: undefined is not an object (evaluating 'search.toLowerCase')