在 React-Native navigationOptions 中处理 OnPress

Handle OnPress inside React-Native navigationOptions

我无法在内部添加保存方法 navigationOptions 你能帮我做正确的事吗?

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

实际上并不清楚你到底想做什么。 但似乎您想从静态方法 class 中调用非静态方法。

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

像这样:

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

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