解决react-router-dom V6路由嵌套时,子路由无法显示的问题

举报
江咏之 发表于 2022/08/17 23:06:18 2022/08/17
【摘要】 警告提示:You rendered descendant <Routes> (or called useRoutes()) at "/home" (under <Route path="...

警告提示:You rendered descendant <Routes> (or called useRoutes()) at "/home" (under <Route path="/home">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
在这里插入图片描述

App.tsx

router v5的写法

  <Route path="/home" element={<Commonview />}></Route>

  
 
  • 1

在这里插入图片描述
Commonview组件
在这里插入图片描述

子路由页面无法显示,并警告:You rendered descendant <Routes> (or called useRoutes()) at "/home" (under <Route path="/home">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.

在这里插入图片描述
经查阅文档可知:
v6 中,所有路由路径始终是完全匹配,不再像v4/5中那样匹配路径前缀。父/根路径需要指定 * 通配符,以便它们现在可以进行"前缀"匹配,所以解决办法是在App.tsx加上通配符*

<Route path="/*" element={<Commonview />}></Route>

  
 
  • 1

在这里插入图片描述

在这里插入图片描述

问题完美解决!

文章来源: jiangwenxin.blog.csdn.net,作者:前端江太公,版权归原作者所有,如需转载,请联系作者。

原文链接:jiangwenxin.blog.csdn.net/article/details/126380942

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。