React中NavLink无法跳转页面的问题排查求助
React路由链接无法跳转的解决办法
你的代码里存在两个核心错误,导致路由完全无法触发跳转:
1. index.tsx 导入了错误的组件
你在index.tsx里把Home组件当成App导入了,根本没有加载包含路由配置的App.tsx,路由规则自然不会生效。
修正后的index.tsx:
import React from 'react' import { createRoot } from 'react-dom/client' import App from './App' // 改为导入根目录的App.tsx import '../src/index.css' const root = document.getElementById('root')! const rootElement = createRoot(root) rootElement.render( <React.StrictMode> <App /> </React.StrictMode> )
2. 重复嵌套Router组件
App.tsx里已经用BrowserRouter包裹了路由配置,index.tsx又额外套了一层Router,多层路由上下文会导致NavLink无法正确识别路由规则,直接移除index.tsx里的Router即可。
3. 确认组件导入路径大小写
检查App.tsx中AboutMe的导入路径:
import AboutMe from './pages/AboutMe/Aboutme'
如果你的系统文件系统区分大小写(比如Linux/macOS),要确保文件名和导入路径一致(你的组件文件是ABOUTME.tsx,导入时是Aboutme,可能需要调整为./pages/AboutMe/ABOUTME或者统一文件名大小写)。
修正以上三点后,重新启动项目,点击About Me链接就能正常跳转到AboutMe组件,控制台也会打印对应的日志。
内容的提问来源于stack exchange,提问作者Mirka
相关产品推荐
相关产品推荐

