javascript – 在DrawerNavigator中使用屏幕选项传递道具
作者:互联网
我在https://reactnavigation.org/docs/navigators/drawer使用DrawerNavigator.
const MyApp = DrawerNavigator({
Home: {
screen: MyHomeScreen,
},
Notifications: {
screen: MyNotificationsScreen,
},
});
我有多个屏幕使用MyNotificationsScreen组件与不同的道具.
我该怎么做:
const MyApp = DrawerNavigator({
Home: {
screen: MyHomeScreen,
},
Notifications1: {
screen: MyNotificationsScreen(propName=val1),
},
Notifications2: {
screen: MyNotificationsScreen(propName=val2),
},
});
解决方法:
在许多情况下我认为更好的方法:
screen: (props) => <MyNotificationsScreen {...props} propName={val1} />
这将把你的导航道具放在props.navigation.state.params中.如果你希望它们出现在this.props中(这意味着你的组件没有紧密耦合到react-navigation),那么使用:
screen: (props) => <MyNotificationsScreen {...props.navigation.state.params} propName={val1} />
标签:javascript,reactjs,react-navigation 来源: https://codeday.me/bug/20190611/1217429.html