2017-05-07 74 views
3

我試圖作出反應本地導航的例子:如何在反應原生導航器中傳遞參數?

const StudentStackNav = StackNavigator({ 
    Home: { 
    screen: StudentLogin, 
    } 
}); 

如何參數傳遞給StudentStackNav並把它傳遞給StudentLogin?

我試過<StudentStackNav name='Lucy'>,但this.props.nameHome中不可用。

+1

看看 「入門」, 「傳遞PARAMS」 部分:https://reactnavigation.org/docs/intro/#Passing-params – Cherniv

+0

@Cherniv其實,我想將參數傳遞給導航器而不是屏幕。 – PYL

回答

7

導航器組件上的普通道具可用於配置導航器。

要發送任意道具到屏幕上,您必須使用screenProps

因此,例如:

<StudentStackNav screenProps={{ name: 'Lucy' }}/> 

將在StudentLogin可作爲this.props.screenProps

screenProps被記錄在this page

+0

你說得對。它的工作原理。 – PYL

+0

太棒了,請點擊旁邊的複選標記接受答案。 –

+0

這個答案是正確的,而且比反應原生網站上的文檔更有用。作爲一個說明,你可以在一個類構造函數訪問這些特性,以及即使只有少數人能做到這一點: '類Foo擴展組件{ \t \t構造(道具) \t \t { \t \t \t超(道具); props.screenProps //你想要訪問什麼 \t \t} render(){ return null; } }' – user883210

相關問題