我以前在 JS 中看到过这种语法,我只是好奇它是如何工作的。在 FlatList 的React Native Docs 中,一个示例调用了 renderItem。this._renderItem 如何知道它正在使用的单个列表项?看起来项目正在被解构,但来自什么对象?
_renderItem = ({item}) => (
<MyListItem
id={item.id}
onPressItem={this._onPressItem}
selected={!!this.state.selected.get(item.id)}
title={item.title}
/>
);
render() {
return (
<FlatList
data={this.props.data}
extraData={this.state}
keyExtractor={this._keyExtractor}
renderItem={this._renderItem}
/>
);
}
换句话说:在 FlatList 中,进行相同调用的另一种方法可能是:
<FlatList <other props> renderItem={({item}) => (<MyListItem ....) />
renderItem 是一些特殊的道具,其中 {item} 将始终是解构的 arg 吗?