React native 如何将React导航与平面列表中的元素一起使用';s头球?
我可以在renderItem中完美地导航,但是当我尝试在我在标题中使用的组件中单击时,它会说“Undefined不是一个对象(评估'\u this.props.navigation.navigate')) 这就是我试图在传递给扁平列表标题的组件中导航的方式React native 如何将React导航与平面列表中的元素一起使用';s头球?,react-native,react-navigation,react-native-flatlist,flatlist,React Native,React Navigation,React Native Flatlist,Flatlist,我可以在renderItem中完美地导航,但是当我尝试在我在标题中使用的组件中单击时,它会说“Undefined不是一个对象(评估'\u this.props.navigation.navigate')) 这就是我试图在传递给扁平列表标题的组件中导航的方式 this.props.navigation.navigate('Profile',{data:info})}>只是一种预感,但我猜该组件是为ListHeaderComponent传递的,而不是带有navigation属性的呈现元素 例如: f
this.props.navigation.navigate('Profile',{data:info})}>
只是一种预感,但我猜该组件是为ListHeaderComponent
传递的,而不是带有navigation
属性的呈现元素
例如:
function Parent(props) {
// Here the FlatList will render the header as <MyHeader /> with no props
// If this.props.navigation is called in MyHeader it will be undefined
return (
<FlatList ListHeaderComponent={MyHeader} ... />
);
}
功能父级(道具){
//在这里,FlatList将标题呈现为没有道具
//如果在MyHeader中调用this.props.navigation,它将是未定义的
返回(
);
}
vs
功能父级(道具){
//这里,MyHeader首先呈现为一个元素,通过
//必要的导航道具
警察局长=();
返回(
);
}
我将导航道具传递给ListHeaderComponent,它可以工作,因为呈现的元素给了我一些其他问题
我就是这样做的
return(
<SafeAreaView style={styles.container}>
<FlatList
ListHeaderComponent={
<>
<Header navigation={this.props.navigation}/>
</>
}
style={styles.scrollView}
numColumns='2'
columnWrapperStyle={{justifyContent: 'space-between'}}
data={ex}
renderItem={renderItem}
keyExtractor={(item, index) => index.toString()}
/>
</SafeAreaView>
);
返回(
index.toString()}
/>
);
您能在这里发送更多带有标题代码的代码吗?请提供可复制的代码
return(
<SafeAreaView style={styles.container}>
<FlatList
ListHeaderComponent={
<>
<Header navigation={this.props.navigation}/>
</>
}
style={styles.scrollView}
numColumns='2'
columnWrapperStyle={{justifyContent: 'space-between'}}
data={ex}
renderItem={renderItem}
keyExtractor={(item, index) => index.toString()}
/>
</SafeAreaView>
);