在通过反应原生的道具传递数据后无法打印数据?

时间:2016-08-30 08:12:25

标签: navigation react-native rendering fetch console.log

嘿伙计们我试图将道具从一个场景传递到另一个场景我已经将道具传递到所需的场景 这就是我通过renderScene文件

改变场景的方式
renderScene (route, navigator) {
    return React.createElement(route.component, {
      navigator: navigator, ...route.passProps
    })
  },

这是我传递道具的代码

modalButtonPress() {
    this.props.navigator.push({
        component: require('../Containers/blabla').default,
        passProps: {modalData: this.state.modalData}
    });
}

在我使用this.props.modalData和props.modalData调用它的其他文件中使用相同的数据返回

constructor (props) {
    super(props)
    this.state = {
        modalData: props.modalData,
    }
}

当控制台记录数据时,我可以在控制台中看到数据 data received through props

但是当我尝试打印这些数据时,我看不到任何屏幕是空白的 这是我的渲染方法。

render () {
    return (
      <View style={{justifyContent: 'flex-start'}}>
          <H3 style={styles.header}> {this.state.modalData._source.service_name}
          </H3>
          <Text style={styles.negativeMargin} >
              Type: <Text style={styles.bold}>{this.state.modalData._source.service_id}</Text>
          </Text>
      </View>
    )
  }

任何人都可以指出我在做错的原因是为什么数据没有在屏幕上呈现。我很困惑并且困惑为什么数据没有得到打印。提前谢谢。

1 个答案:

答案 0 :(得分:0)

console.log(this.state.modalData._source.service_name)在您的渲染方法中是否正常工作(以确保您正在访问有效的属性)?

您是否确信您的布局允许您的文字显示在屏幕上?例如,白色背景上没有白色字体,还是零宽度视图?它发生了很多!