我正在开发一个 React 项目,在其中一个组件中,我通过 react-router-dom 链接将属性传递给另一个组件,如下所示:
let updateEmpInfo;
...
<Button component={Link}
halfWidth
variant="contained"
color="primary"
preventDefault
onClick={getEmpInfo}
to={{pathname: "/update",
state:
{id: updateEmpInfo.id,
name: updateEmpInfo.name,
department: updateEmpInfo.department,
gender: updateEmpInfo.gender}
}}>Update information
</Button>
我的问题是专门关于“状态”属性的。如您所见,我传递了几个状态参数(id、name、department 和gender)。由于 Link 组件位于 render 方法内部,因此需要在 render 方法的某处定义 updateEmpInfo 变量。我正在尝试从用户那里获取输入,并在组件渲染后根据他们的输入设置所有 updateEmpInfo 属性的值。所有这些都将传递给 Link 的 state 属性。我试图在 getEmpInfo 函数中这样做。但是,无论输入如何,state 属性都会保留在渲染期间设置的所有初始值。单击链接后,是否可以根据用户输入更改 updateEmpInfo 属性?我的问题很清楚。我很乐意提供任何其他信息。先感谢您!