以下是我的组件树。
DashboardComponent
TaskManagementView
TaskManagementForm
SubmitButtonComponent
我需要将按钮单击事件从SubmitButtonComponent
传递到DashboardComponent
。
一种方法如下
<DashboardComponenet AddTask={AddSomeTask}>
....
<TaskMangementView submitClicked={props.AddTask}>
....
<TaskManagementForm ButtonClick={props.submitClicked}/>
.....
<SubmitButtonComponent onclick={props.ButtonClick}/>
....
<TaskManagementForm />
....
</TaskManagementView >
....
</DashboardComponent>
有没有一些好的方法将onClick传递给仪表板组件?这很难维护。
正如 Gaurav 所说,您可以将函数作为道具通过组件向下传递。但是当中间有许多组件时,这可能会变得混乱
或
我建议使用类似上下文的东西,它将允许您跳过中间的组件,只在需要时访问该函数。