我正在使用具有以下结构的 react-router , redux 和 redux-saga 开发一个react-app:
<Switch>
<Route path="/" exact component={Index}/>
<Route path="/user" exact component={Userlist}/>
<Route path="/user/:id" exact component={Userdetail}/>
</Switch>
有状态组件连接到redux并从后端获取数据。数据在表中列出,并具有指向Userdetail组件的链接。 在用户列表组件中,必须完成所有状态管理(例如,更新/删除用户) 单击表中的一行后,呈现Userdetail组件(我将用户数据通过Router-Link状态传递给我的组件)。
<Link to={{
pathname: `/user/${props.user._id}`,
state: {
user: user
}
}} className="stretched-link"/>
通过使用状态并通过我的userdetail组件中的props.location访问数据,将数据传递到我的userdetail列表正在按预期的方式工作。
在此组件中,将显示用户的所有其他数据。另外,还有两个按钮用于处理更新和删除部分。这两个函数的引用应作为道具从Userlist传递给Userdetail组件。
现在我要问我的问题: 如何将函数引用从 Userlist.js 传递到相应的子组件( Userdetail.js )? 我知道有一种方法可以使用render方法(而不是组件)将多个props传递到路线,但是很难根据我的应用程序结构来实现。如果可能的话,我想将所有路由都保存在App.js或单独的文件中。 预先非常感谢