React-native, реагировать-навигация. У меня есть пользовательский заголовок с кнопкой, который я извлек в другой файл. Кажется, я не могу получить доступ к объекту навигации.
function SetNavOptions(title, navigation) {
const { buttonStyle, iconStyle } = styles;
return {
headerBackground: (<LinearGradient
colors={['#337ab7', '#265a88']}
style={{ flex: 1 }}
start={[0, 0]}
end={[0, 1]}
/>),
headerTitleStyle: {
color: 'white',
},
headerTitle: title,
headerLeft: (
<TouchableOpacity onPress={() => navigation.getParam('mydrawer')} style={buttonStyle}>
<View>
<Icon.FontAwesome
name='bars'
size={26}
style={iconStyle}
/>
</View>
</TouchableOpacity>
),
};
}
И это мой экран, на котором я установил переменную navigationOptions:
export default class HomeScreen extends React.Component {
static navigationOptions = SetNavOptions('Topics', this.navigation);
componentDidMount() {
this.props.navigation.setParams({ mydrawer: this.openDrawer });
}
openDrawer = () => {
this.props.navigation.navigate('myDrawer');
};
}
Запустив код и нажав кнопку, я получаю 'undefined не является объектом (оценка' navigation.getParam '). Что я делаю неправильно? Кроме того, как я определил SetNavOptions () лучший способ извлечь все это? Я новичок в реакции-родной.