使用React-Router时出现的错误
使用React-Router时出现的错误:
问题描述
在配置路由时出现的问题,关于 Router5 和 Router6的使用区别
bundle.js:38620 Uncaught Error: A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.at invariant (bundle.js:38620:20)at Route (bundle.js:39415:11)at renderWithHooks (bundle.js:24114:22)at mountIndeterminateComponent (bundle.js:28690:17)at beginWork (bundle.js:30148:20)at HTMLUnknownElement.callCallback (bundle.js:12074:18)at Object.invokeGuardedCallbackDev (bundle.js:12123:20)at invokeGuardedCallback (bundle.js:12185:35)at beginWork$1 (bundle.js:34989:11)at performUnitOfWork (bundle.js:34163:16)
原因分析:
Switch的作用:
- 通常情况下,path (路径) 和 coponent (组件) 是一一对应的关系。
- 在默认的路由匹配规则中,如果不使用Switch,注册的所有路由都会和路径进行匹配,并且将匹配到的组件都显示出来。如下代码:如果输入路径为 /home 将会显示 Home 和 Hotel 两个组件。
- Switch可以提高路由的匹配效率,一旦匹配上将不再继续向下匹配。
<Routes> <Route path="/about" element={<About />}/><Route path="/home" element={<Home />}/><Route path="/home" element={<Hotel />}/></Routes>
Router6 中的Routes
Router6 中使用了 Routes 代替了 Switch,但是细微的差别是,Router5中不使用Switch是不会报错的。但是Router6中不使用Routes会报上述错误。这样修改的原因有待学习??
解决方案:
综上,解决方法当然是加上 Routes 呀
import React from "react";
import {BrowserRouter as Router, Routes, Route} from 'react-router-dom'
import Login from "./Login";
function Main(){return (<Router><Routes><Route path='/login' exact element={<Login/>} /></Routes></Router>)
}
export default Main
使用React-Router时出现的错误相关推荐
- 初探 React Router 4.0
React Router 4.0 (以下简称 RR4) 已经正式发布,它遵循React的设计理念,即万物皆组件.所以 RR4 只是一堆 提供了导航功能的组件(还有若干对象和方法),具有声明式(引入即用 ...
- React Router 使用教程
真正学会 React 是一个漫长的过程. 你会发现,它不是一个库,也不是一个框架,而是一个庞大的体系.想要发挥它的威力,整个技术栈都要配合它改造.你要学习一整套解决方案,从后端到前端,都是全新的做法. ...
- 关于React Router v4的虚张声势指南
In this article, we'll cover the important things you can quickly learn to be informed and confident ...
- 阮一峰 React Router 教程
阮一峰 React Router 教程 本文介绍 React 体系的一个重要部分:路由库 React-Router.它是官方维护的,事实上也是唯一可选的路由库.它通过管理 URL,实现组件的切换和状态 ...
- hitchhiker部署_Hitchhiker的React Router v4指南:20分钟内完成Grok React Router
hitchhiker部署 Hi fellow React Hitchhiker! Want a ride into React Router? Jump in. Let's go! 大家好,React ...
- react router
目录 前言 核心 1.内置的组件 2.内置的路由器组件 3.History 对象 4.Location 对象 5.react router 的安装包 一.React-Router v1 1.一些概念 ...
- React router 的 Route 中 component 和 render 属性理解
React router 的 Route 中 component 和 render 属性理解 Route 标签的三个互斥属性 render.component.children Route 就是用来匹 ...
- router路由react_使用React Router在React中受保护的路由
router路由react In this video, you will see how to create a protected route using React Router. This r ...
- hitchhiker部署_Hitchhiker的React Router v4指南:无限远的递归路径!
hitchhiker部署 Welcome to the third part of the Hitchhiker's Guide to React Router v4. In this article ...
最新文章
- Java中各种集合特点总结
- posix多线程程序使用条件变量的一个常见bug
- 大话数据库连接池简史,你都用过几个?
- php维护session,维护带有cookie的PHP session_start()
- eclipse 修改java代码不重启服务器 生效配置
- java 线程 主进程_java 多线程通用方法
- ncurses鼠标事件:mousemask(),ALL_MOUSE_EVENTS,KEY_MOUSE,getmouse(),mouse_grafo(),wmouse_trafo()
- Web前端工程师需要什么学历
- 企业物流管理与最新IT技术
- i18n国际语言代码对照表
- CESM笔记——模式工作流(cesm1_2_2)
- instant-ngp总结
- Exploring Phrase Grounding without Training: Contextualisation and Extension to Text-Based Image Ret
- 通过代码实现重启手机
- Tomcat6中web项目部署路径webapps和wtpwebapps的区别
- 一张图读懂系列|什么是量子?
- linux 命令行高亮显示
- 瓷砖铺贴方法_5种常见的瓷砖铺贴及施工方法
- word如何设置上标形式_word如何将107中的7设置为上标表示形式
- 批量抓取东方财富EastMoney的宏观经济数据