javascript - 如何通过静态navigationOptions将 Prop 从上一个屏幕传递到下一个屏幕?

标签 javascript reactjs react-native react-redux react-navigation

我有这样的屏幕转换:

A -> B -> C

现在在 B 上,我有这个静态导航选项:

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})} />
                                } );

    // ...
}

我从A接收MyString,并在B中正常显示。但我想通过单击 headerRight 按钮将其传递给 C 。其定义中存在语法错误:

Unexpected token, expected ,

会出现什么问题吗?谢谢

最佳答案

更改此行:

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

对于:

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

您缺少 key 。

关于javascript - 如何通过静态navigationOptions将 Prop 从上一个屏幕传递到下一个屏幕?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45044251/

相关文章:

javascript - 事件处理程序内的调用方法未定义

javascript - 错误 : Invariant Violation: Touchable child must either be native or forward setNativeProps to a native component stack

javascript - 最小的 CSS 和 HTML 框在最上面但不按顺序排列

javascript - 下面的代码中如何有多个 return 语句?谁能解释一下它在这里是如何工作的?

java - Spring Boot React 在单独的包中

javascript - 在 React 中将变量设置为子节点

node.js - ERR_NAME_NOT_RESOLVED 使用 Docker 网络在后端容器和 React 容器之间进行通信

javascript - tinyMCE 选项

javascript - 返回 JSON 中的 Base64 编码缩略图还是只返回 URL?

javascript - 模拟器卡在从 10.0.2.2 :8081, 加载是什么问题?