通过Link传递数据vs在React Router中使用useParams、useEffect &g



这方面的一个例子是带有Link视图的表。以这种方式导航到具有表的组件

<tbody>
<tr>
<td>
<Link to={`/loan-requests/${loanRequest.id}/details`}>
<Button size="sm" variant="outline-primary">
View
</Button>
</Link>
</td>
</tr>
</tbody>

useParamsuseEffect将用于获取数据并显示

或者这样做:

<tbody>
<tr>
<td>
<Link to={{path: `/loan-requests/${loanRequest.id}/details`, state={loanRequest}}}>
<Button size="sm" variant="outline-primary">
View
</Button>
</Link>
</td>
</tr>
</tbody>

,状态在子组件中使用。

那么哪个更好呢?

我认为这两种方式是等价的。对于第二种方式,' state '是通过url对象将数据从该组件传递到另一个页面的一种方式。参见:https://reactrouter.com/web/api/Link

最新更新