场景描述:
父组件触发某个事件改变子组件的值
return (
<PageHeaderWrapper title={false}>
<Card bordered={false}>
<div className={styles.tableList}>
</div>
<div className={styles.tableListForm}>{this.addForm()}</div>
<Table
// scroll={{ x: 2200 }}
rowKey={record => record.id}
loading={loading}
dataSource={gridData.list}
columns={columns}
pagination={paginationProps}
onChange={this.handlePageChange}
/>
</Card>
<DoctorEditForm
{...editMethods}
proList={proList}
cityList={cityListEdit}
hosList={hospitalListEdit}
departList={departListEdit}
workTimeList={workTimeList}
modalVisible={showEdit}
curHospital={curHospital}
values={hospital}
preBinds={preBinds}
/>
{/* <AuditEditForm {...editMethods} auditValue={auditValue} modalVisible={showAudit}/> */}
</PageHeaderWrapper>
);
constructor(props) {
super(props);
this.state = {
isAudit: 0
}
}
注:此处不用componentDidMount的原因,加载父组件的时候子组件同时被执行,因此在父组件触发事件之前componentDidMount已经被执行过了
componentDidUpdate(prevProps) {
const { values: { isAudit } } = prevProps
const { values: { isAudit:newIsAudit } } = this.props
if (isAudit!=newIsAudit) {
this.setState({
isAudit:newIsAudit
})
}
}