나는 여기에 nested navigation recipe을 따라 매끄러운 React Navigation을 사용하고 있지만, 내 탐색에 'this'를 전달하는 법을 모르겠습니다. 나의 무지를 유감스럽게 생각합니다. React Native : 중첩 된 내비게이션에 소품 전달
class MyApp extends Component {
render() {
return (
<StackNavigation
screenProps={this.state}
/>
)
}
}
const MainScreenNavigator = TabNavigator(
{
Awesome: { screen: Awesome } // How do I pass this.state?
}
)
const routesConfig = {
Home: { screen: MainScreenNavigator },
Profile: { screen: Profile }
}
const StackNavigation = StackNavigator(routesConfig, {initialRouteName: 'Home'})
그래서 어떻게 내 MainScreenNavigator에 this.state를 전달하지 : 여기
내 일반적인 구조 개요입니까?
내 생각에 'const StackNavigation'은 App 구성 요소 외부에서 선언되므로'this'의 컨텍스트가없고 'this'는 사용할 수 없습니다. – AlxVallejo
Youre right, 나는 지금까지 깨닫습니다. 하지만 ... 구체적으로 무엇을하고 싶니? 그리고'screenProps'가 당신의 문제를 해결하지 못하는 이유는 무엇입니까? –
이렇게 * 초기 렌더링에서 * 작동하지만 해당 소품이 수정 된 경우 (예 : 루트 구성 요소의 상태를 수정하여) 하위 화면이 다시 렌더링되지 않는 것으로 나타났습니다. 네비게이터가 소품을 업데이트하도록 강제 할 여지가 있습니까? –