由于在此实例中无法应用ref =“ id”,因此如何在仪表板组件内调用方法:
<Route
path='/dashboard'
render={(props) => <Dashboard {...props} isAuthed={true} />}
/>
上下文: 我有一个在AppComponent中运行的服务。服务完成运行后,我想更新ChildComponent中的列表。还有一个ChildComponent,因此当服务在AppComponent中保持运行时,我可以在各个子组件之间导航。因此,无论我是哪个孩子(路线),服务完成后列表都会更新。因此,我需要在路由的子组件中更新此列表。
答案 0 :(得分:0)
我找到了一种解决方法,方法是传递一个道具,孩子可以将其类发送给父母。
父母
<Route
path='/dashboard'
render={(props) => <Dashboard {...props} setChild={this.setChild} />}
/>
setChild = (component) =>{
this.childComponent = component
}
受虐儿童
class Dashboard extends Component {
constructor(props) {
super(props);
props.setChild(this);
}
然后我可以通过调用在路由子组件中的任何方法。
父母
this.childComponent.childMethod();