无法从navigationOptions内部访问道具

时间:2018-01-19 17:04:14

标签: react-native navigation stack-navigator

我正在使用StackNavigator库但无法弄清楚如何从navigationOptions中访问道具。

在我的通话课中,我有:

navigate("TestView", { mdata: mdataObject })

在我的TestView类中,我有以下内容:

static navigationOptions = {
    title: this.props.navigation.state.params.mdata.title
}

但是,我收到以下错误:

  

无法找到属性'导航'未定义的

我已经确认我可以从componentDidMount()函数访问this.props.navigation.state.params.mdata.title,因此那里有数据。

为什么我从navigationOptions函数中收到此错误,我该怎么做才能修复它?

另外,我将navigateOptions称为函数,但不确定是否正确。我应该怎么称呼它?

1 个答案:

答案 0 :(得分:4)

要访问navigationOptions上的导航道具,您需要执行以下操作:

static navigationOptions = ({ navigation }) => ({
  title: navigation.state.params.mdata.title
})