React Native如何在NavigatorIOS组件中使用passProps?

时间:2015-11-03 09:11:44

标签: javascript react-native

这是我的代码:

<TouchableHighlight onPress = { () => {

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

  }}>

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

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

2 个答案:

答案 0 :(得分:0)

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

<TouchableHighlight onPress = { () => {

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

}}>

答案 1 :(得分:0)

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

感谢您的帮助〜