Javascript 导航未传递到标题右侧按钮?
我添加了几个标题右侧按钮,但当我单击它们时,会出现以下错误:Javascript 导航未传递到标题右侧按钮?,javascript,react-native,react-native-navigation,Javascript,React Native,React Native Navigation,我添加了几个标题右侧按钮,但当我单击它们时,会出现以下错误: TypeError: undefined is not an object (evaluating '_this.props.navigation.navigate') 这是标题的代码,它具有标题右侧按钮: <Stack.Screen name="Tabs" component={Tabs} options = {{
TypeError: undefined is not an object (evaluating '_this.props.navigation.navigate')
这是标题的代码,它具有标题右侧按钮:
<Stack.Screen
name="Tabs"
component={Tabs}
options = {{
title: " ",
headerTitleStyle: {
fontWeight: 'bold',
fontSize: 24,
color: '#FFFFFF'
},
headerStyle: {
backgroundColor: '#121212',
shadowColor: 'transparent'
},
headerRight: () => (
<View style={{flexDirection: "row"}}>
<TouchableOpacity
style={{paddingRight: 20}}
onPress={() => this.props.navigation.navigate('Search')}>
<Ionicons name="ios-search" size={25} color="white" />
</TouchableOpacity>
<TouchableOpacity
style={{paddingRight: 20}}
onPress={() => this.props.navigation.navigate('Notifications')}>
<Ionicons name="md-notifications" size={25} color="white" />
</TouchableOpacity>
</View>
),
}}/>
(
this.props.navigation.navigate('Search')}>
this.props.navigation.navigate('Notifications')}>
),
}}/>
如何访问标题中的导航
编辑:跟踪文档并将其更改为:
<Stack.Screen
name="Tabs"
component={Tabs}
options = {( navigation ) => ({
title: " ",
headerTitleStyle: {
fontWeight: 'bold',
fontSize: 24,
color: '#FFFFFF'
},
headerStyle: {
backgroundColor: '#121212',
shadowColor: 'transparent'
},
headerRight: () => (
<View style={{flexDirection: "row"}}>
<TouchableOpacity
style={{paddingRight: 20}}
onPress={() => navigation.navigate('Search')}>
<Ionicons name="ios-search" size={25} color="white" />
</TouchableOpacity>
<TouchableOpacity
style={{paddingRight: 20}}
onPress={() => navigation.navigate('Notifications')}>
<Ionicons name="md-notifications" size={25} color="white" />
</TouchableOpacity>
</View>
),
})}/>
({
标题:“,
头饰样式:{
fontWeight:'粗体',
尺寸:24,
颜色:“#FFFFFF”
},
头型:{
背景颜色:'#121212',
阴影颜色:“透明”
},
头灯:()=>(
导航。导航('Search')}>
导航。导航('Notifications')}>
),
})}/>
但是现在得到这个错误:
TypeError:navigation.navigate不是一个函数。(在“navigation.navigate('Search')”中,“navigation.navigate”未定义)
如何访问标题中的导航?您可以将
选项定义为以导航对象为参数的函数:
options={({navigation})=>({
标题:“,
headerTitleStyle:{…}
})}
这是一本书
可以找到其他用例。您可以将选项定义为以导航对象为参数的函数:
options={({navigation})=>({
标题:“,
headerTitleStyle:{…}
})}
这是一本书
可以找到其他用例。遵循文档并添加了该用例。现在,我得到一个错误:navigation.navigate不是一个函数。(在“navigation.navigate('Search')”
中确保您使用的是({navigation})=>…
而不是(navigation)=>…
漂亮。谢谢!遵循文档并添加了它。现在,我得到错误:navigation.navigate不是一个函数。(在“navigation.navigate('Search')”
中确保您使用的是({navigation}=>…
而不是(navigation)=>…
漂亮。谢谢!