react-native - 在 React-Native navigationOptions 中处理 OnPress

标签 react-native navigation react-navigation

我陷入了在 navigationOptions 中添加保存方法的困境,你能帮我做正确的事情吗?

static navigationOptions = ({navigation}) => ({
        headerTitle: "Add New Item",
        ...css.header,
        headerRight: <NavViewRight
            onPress={() => this.rightHeaderAction()} />,
    })

最佳答案

实际上并不清楚你到底想做什么。 但似乎你想从静态方法调用类内部的非静态方法。

你指的是this,但是这里的this并不是指类实例。为了从类中调用某些内容,您需要将方法设为静态。

类似这样的事情:

class MyScreen extends Component {
    static navigationOptions = ({
        navigation
    }) => ({
        headerTitle: "Add New Item",
        ...css.header,
        headerRight: < NavViewRight
        onPress = {
            () => MyScreen.rightHeaderAction()
        }
        />,
    })

    static rightHeaderAction() {
        // your code here
    }
}

关于react-native - 在 React-Native navigationOptions 中处理 OnPress,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44179800/

相关文章:

javascript - set.State 未定义

ios - 无法在 React Native iOS 模拟器中按 URI 显示图像

javascript - 在 React Native 中存储静态和公共(public)数据

java - 带 fragment 的抽屉导航(带 ViewPager)重新打开时消失

html - 调整屏幕大小时,导航菜单无法正确响应

android - 使用 React-Navigation 在所有屏幕中显示组件 - React Native

javascript - react 导航, Prop 验证中缺少 tintColor

android - groovy.lang.MissingPropertyException : Could not get unknown property 'manifestOutputFile'

Android按钮打开xml布局

reactjs - StackNavigation 内的模态模式屏幕