【问题标题】:React Native how to use passProps in NavigatorIOS component?React Native 如何在 NavigatorIOS 组件中使用 passProps?
【发布时间】:2015-11-03 09:11:43
【问题描述】:

这是我的代码:

<TouchableHighlight onPress = { () => {

    this.props.nav.push({
      component:  Movie,
      title: movie.title,
      passProps: {movie: movie},
    });

  }}>

当我按下按钮时,导航器转到电影详细信息页面 (Movie),当我在 Movie 组件中执行 this.props.movie 时,发现 this.props 未定义。我知道我走错了路,那么正确的方法是什么?或其他将属性传递给Movie 组件的解决方案?

任何帮助将不胜感激! & 提前致谢!

【问题讨论】:

  • 电影数据从何而来?

标签: javascript react-native


【解决方案1】:

我假设电影在您的道具范围内?如果是这样,那么也许你只需要确定它的范围。 movie.title 是否通过了?试试这个...

<TouchableHighlight onPress = { () => {

this.props.nav.push({
  component:  Movie,
  title: this.props.movie.title,
  passProps: {movie: this.props.movie},
});

}}>

【讨论】:

    【解决方案2】:

    对不起各位,我已经找到原因了。这与电影数据的来源无关,而是因为我误解了lifecycle of the component。我在 Movie 组件的 getInitialState 函数中使用了 this.props.movie,这显然是错误的。

    谢谢你的帮助~

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多