0

我有屏幕的這種轉變:如何通過靜態navigationOptions將道具從前一個屏幕傳遞到下一個屏幕?

A - >乙 - 「ç

現在對B,我有這個static navigationOptions

class ScreenB extends Component { 

    static navigationOptions = ({navigation}) => ({ 

    /* works fine to display props here -> */ title: navigation.state.params.MyString, // works fine for display 
               headerLeft: <Button title="<" onPress={() => navigation.goBack()} />, 
    /* does not work to pass it here -> */  headerRight: <Button title="+" onPress={() => navigation.navigate('ScreenC', {navigation.state.params.MyString})} /> 
           }); 

    // ... 
} 

我接收MyStringA,並在B中正常顯示。但我想通過它CheaderRight按鈕點擊。在定義中有語法錯誤說:

意外的令牌,預計,

會是什麼問題?由於

+0

我假設你使用某種包裝?我沒有看到任何明顯的語法錯誤。上一次我遇到這些令人沮喪的經歷之一時,出於某種原因,將組件封裝在括號中會修復它。 headerLeft:(

回答

1

改變這一行:

headerRight: <Button title="+" onPress={() => navigation.navigate('ScreenC', {navigation.state.params.MyString})} /> 

爲:

headerRight: <Button title="+" onPress={() => navigation.navigate('ScreenC', {title:navigation.state.params.MyString})} /> 

你缺少的關鍵。

相關問題