react 数据渲染问题.

如下用简略代码演示取值问题.
通过点击事件触发.
在render()与return()之间,
console.log(dataSource) //有值,
到<Table>里,没有值.
问题出在哪里?
像是生命周期哪里不对


render() {
  const { dataSource } = this.props
   console.log(dataSource)   //有值

    return (
            <Table
              bordered
              rowSelection={rowCheckSelection}
              columns={columns}
              dataSource={this.state.dataSource} // 取不到值
       >
    )

}
阅读 3.5k
3 个回答

直接这么写dataSource={dataSource}

const { getFieldDecorator } = this.props
render() {
  const { dataSource } = props;
    return (
            <Table
              bordered
              rowSelection={rowCheckSelection}
              columns={columns}
              dataSource={dataSource}
       >
    )

}

你向Table中传入的dataSource是this.state.dataSource,而你打印的是从this.props中取的

打印的是this.props.dataSource的值,取得的是this.state.dataSource的值

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题