reactjs - React Router 避免卸载

标签 reactjs react-router

我有 3 条路线,它们使用相同的组件,并且根据路线显示略有不同的内容。问题是,在每条路线上,整个组件都会从头开始安装/卸载,从而导致性能问题。避免卸载但仍然使用相同组件并具有这 3 条路线的最佳方法是什么?

<Route path="/Products" exact render={Products} />
<Route path="/Products/shoes" exact component={Products} />
<Route path="/Products/books" exact component={Products} />

React 路由器版本 4。

最佳答案

您可以根据路由条件路径匹配来渲染路由,这样每次路由更改时它都不会重新挂载

<Route path="/Products(/shoes|/books)?" exact render={Products} />

关于reactjs - React Router 避免卸载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50697741/

相关文章:

javascript - 当调用其他 redux 操作创建者时,Redux 表单不会显示在 React Bootstrap Modal 上

reactjs - React 组件不会在状态更改时重新渲染

javascript - 来自不同位置的过渡元素

reactjs - 为什么 splice 在 React 中无法正常工作?

react-router - 如何从 Docusuarus 页脚链接到非 Docusaurus 定义的路线?

javascript - 通过 React-router 渲染子组件

javascript - 错误: Couldn't find preset "react-hmre" relative to directory

reactjs - 在react-testing-library中按回车键提交表单不起作用

javascript - 将 'react-router' 迁移到 'react-router-dom' (v4)

javascript - 如何为 react-router (redux) 中的所有全局状态更改添加默认加载栏?