React Router路由跳转后按钮残留显示的原因及解决方法
问题产生原因
React Router 的路由切换渲染规则仅对<Routes>标签内部声明的路由组件生效,写在<Routes>外部的元素属于全局常驻内容,不会随路由切换被卸载。你的跳转按钮直接放在了<Routes>同级的位置,因此无论路由切换到哪个路径,按钮都会持续渲染显示。
另外你的代码存在两个额外问题:
- 仅配置了
/login路径的路由,根路径/没有对应渲染内容 - 导入了未使用的
Router组件,Login.js文件开头存在无效的[
