Reactjs 从子组件路由时调用componentDidMount
当删除子组件中的项时,我正在尝试重新获取父组件的componentDidMount生命周期?但是,在初始呈现父路由时调用它之后,使用this.context.router.push将其路由回父路由似乎不再触发父路由中的componentDidMount。有人有建议避开这件事吗?非常感谢Reactjs 从子组件路由时调用componentDidMount,reactjs,react-router,Reactjs,React Router,当删除子组件中的项时,我正在尝试重新获取父组件的componentDidMount生命周期?但是,在初始呈现父路由时调用它之后,使用this.context.router.push将其路由回父路由似乎不再触发父路由中的componentDidMount。有人有建议避开这件事吗?非常感谢 export class Parent extends React.Component { componentDidMount () { this.props.fetchData( //
export class Parent extends React.Component {
componentDidMount () {
this.props.fetchData(
// update state
)
}
render () {
// render with updated data
}
}
export class Child extends React.Component {
constructor (props) {
super(props)
this.deleteItem = this.deleteItem.bind(this)
}
componentDidMount () {
this.props.fetchData(
// update state
)
}
deleteItem () {
this.props.deleteItem(id, (res) => {
this.context.router.push('/parentroute')
})
}
render () {
}
}
componentDidMount
仅在组件装入后调用一次
如果要多次调用父组件方法,可以在父组件中使用componentWillReceiveProps
或者,您可以使用子componentDidMount
和componentWillUnmount
钩子,但最好在父钩子中处理它