У меня возникает проблема, когда я нажимаю кнопку внутри боковой панели моего приложения, она переходит на другой экран, но параметры, которые я передаю вместе с ней, не совпадают.
Так что мойНастройка:
Использование реакции навигации:
Часть кода в моем app.navigator.js:
const MainStack = createStackNavigator(
{
Home: {screen: HomeStack},
Login: {screen: LoginStack},
Forgot: {screen: ForgotStack},
Agenda: {screen: AgendaStack},
Info: {screen: InfoStack},
Register: {screen: RegisterStack},
Settings: {screen: SettingsStack},
Contact: {screen: ContactStack},
Account: {screen: AccountStack},
Announcements: {screen: AnnouncementsStack},
},
RouteConfig
);
const AppNavigator = createDrawerNavigator(
{
Main: {
screen: MainStack,
},
WebDetail: {
screen: WebDetailStack
},
},
{
contentComponent: props => <SideScreen {...props}/>,
},
)
contentComponent
- это место, где я нажимаюкнопка и показывает мне экран WebDetail
.На боковом экране у меня есть следующий код, который находится за кнопкой:
shownWeb(url) {
const { navigation } = this.props;
const navigateAction = NavigationActions.navigate({
routeName: 'WebDetail',
params: {sourceHtml: url}
});
navigation.closeDrawer();
navigation.dispatch(navigateAction);
};
На другом экране, в console.log (this.props), я вижу screenprops: undefined.
Как передать параметры с боковой панели на другие экраны?Это работает при работе с другими стеками (Home, Login и т. Д.).
Надеюсь, это понятно.
Пожалуйста, помогите.