react路由初体验(一看就懂)

Posted GHUIJS

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了react路由初体验(一看就懂)相关的知识,希望对你有一定的参考价值。

React Router 以三个不同的包发布到npm 上,它们分别为:

  • react-router:路由的核心库,提供了很多的:组件、钩子。
  • react-router-dom:包含react-router所有内容,并添加一些专门用于DOM的组件,例如<BrowserRouter>等。
  • react-router-native:包括react-router所有内容,并添加一些专门用于ReactNative的API,例如: <NativeRouter>等。

安装

web应用则使用react-router-dom,不指定版本默认安装6版本

npm i react-router-dom@version
pnpm i react-router-dom
yarn add react-router-dom

使用

引入react-router-dom中的BrowserRouter或者HashRouter(HashRouter路由url中包含#),包裹在要使用路由的根组件(不一定是整个项目的根组件):

import  BrowserRouter  from 'react-router-dom';
import  NavLink,Routes,Route  from 'react-router-dom';
import Home from './home';
import About from './about';

export const ReactRouterTest = () => 
    return (
        <BrowserRouter>
            <div>
                <NavLink to='/home'>home</NavLink>
                <NavLink to='/about'>about</NavLink>
            </div>
            <Routes>
                <Route path='/home' element=<Home />></Route>
                <Route path='/about' element=<About />></Route>
            </Routes>
        </BrowserRouter>
        )

效果:

路由重定向:

Navigate :

  • 只要<Navigate>组件被渲染,就会修改路径,切换视图;
  • replace属性用于控制跳转模式(push 或replace,默认是push) 。
import  BrowserRouter,NavLink,Routes,Route,Navigate  from 'react-router-dom';
import Home from './home';
import About from './about';

export const ReactRouterTest = () => 
    return (
        <BrowserRouter>
            <div>
                <NavLink to='/home'>home</NavLink>
                <NavLink to='/about'>about</NavLink>
            </div>
            <Routes>
                <Route path='/home' element=<Home />></Route>
                <Route path='/about' element=<About />></Route>
                <Route  path='/' element=<Navigate to='/home' />></Route>
            </Routes>
        </BrowserRouter>
        )

以上是关于react路由初体验(一看就懂)的主要内容,如果未能解决你的问题,请参考以下文章

一看就懂ReactJS

一看就懂的ReactJs入门教程(精华版)

一看就懂的IP协议!!!

一看就懂的ReactJs入门教程-精华版-转载

转载一看就懂的ReactJs入门教程-精华版

中秋免费送书一看就懂的ReactJs入门教程