我試圖作出反應本地導航的例子:如何在反應原生導航器中傳遞參數?
const StudentStackNav = StackNavigator({
Home: {
screen: StudentLogin,
}
});
如何參數傳遞給StudentStackNav並把它傳遞給StudentLogin?
我試過<StudentStackNav name='Lucy'>
,但this.props.name
在Home
中不可用。
我試圖作出反應本地導航的例子:如何在反應原生導航器中傳遞參數?
const StudentStackNav = StackNavigator({
Home: {
screen: StudentLogin,
}
});
如何參數傳遞給StudentStackNav並把它傳遞給StudentLogin?
我試過<StudentStackNav name='Lucy'>
,但this.props.name
在Home
中不可用。
導航器組件上的普通道具可用於配置導航器。
要發送任意道具到屏幕上,您必須使用screenProps
。
因此,例如:
<StudentStackNav screenProps={{ name: 'Lucy' }}/>
將在StudentLogin
可作爲this.props.screenProps
。
screenProps
被記錄在this page
你說得對。它的工作原理。 – PYL
太棒了,請點擊旁邊的複選標記接受答案。 –
這個答案是正確的,而且比反應原生網站上的文檔更有用。作爲一個說明,你可以在一個類構造函數訪問這些特性,以及即使只有少數人能做到這一點: '類Foo擴展組件{ \t \t構造(道具) \t \t { \t \t \t超(道具); props.screenProps //你想要訪問什麼 \t \t} render(){ return null; } }' – user883210
看看 「入門」, 「傳遞PARAMS」 部分:https://reactnavigation.org/docs/intro/#Passing-params – Cherniv
@Cherniv其實,我想將參數傳遞給導航器而不是屏幕。 – PYL