React导航守卫(V5路由)

这篇具有很好参考价值的文章主要介绍了React导航守卫(V5路由)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

下载:

npm i react-router-dom@5

当我们进行路由跳转的时候,有时候需要满足某种条件才能跳转,比如我只有我们登录成功之后才能到首页面,否则就不能到首页面,这时候我们就需要对路由进行拦截。

例如:

(1)当我们登录的时候存储一个会话存储

<button type="botton" onclick={login}>登录</botton>


const login = () => {
    sessionstorage.token = "123"
    history.push('/home') //引入useHistory,const history = useHistory();
}

(2)然后我们给访问页面添加一个判断

//封装一个判断是否登录的函数

function isAuth() {
    if(sessionstorage.token){
        return true;
    }else{
        return false;
    }
}

(3)使用

如果没登录,则重定向登录页面文章来源地址https://www.toymoban.com/news/detail-803693.html

<Route path="/home" render={() => isAuth()?<Home /> : <Redirect to="/login" />} />

到了这里,关于React导航守卫(V5路由)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 如何使用前端框架(React、Angular、Vue.js等)?该如何选择?

    聚沙成塔·每天进步一点点 前端入门之旅:探索Web开发的奇妙世界 欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦!这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发者,这里都将为你提供一个系统而

    2024年02月07日
    浏览(60)
  • 前后端接口设计与配置中心系统<二十七>-------前端-管理后台设计实现2【导航架构模块设计与实现、基于react-router-dom实现路由模块、网络模块封装与service层实现】

    在上一次前后端接口设计与配置中心系统二十七-------前端-管理后台设计实现1【基于create-react-app搭建web工程、整合antd与less并搭建具有Ant Design风格的页面、页面结构设计与框架搭建】搭建了前端管理后台的基本框架,接着往下继续开撸,接下来则来搭建一下左侧菜单模块了。

    2023年04月09日
    浏览(45)
  • 【前端知识】React 基础巩固(四十)——Navigate导航

    新建Login页面,在Login中引入Navigate,实现点击登陆按钮跳转至 /home 路径下: 当路由均无匹配时,通过Navigate跳转至NotFound界面,其中 * 为通配符: 构建NotFound.jsx 在App.jsx中配置NotFound: 构建Home的子路由页面: HomeRecommend.jsx HomeRanking.jsx 利用 Route 嵌套子路由,实现Home页面下的

    2024年02月14日
    浏览(63)
  • 简介:在这篇教程中,我们将使用React.js框架创建一个简单的聊天机器人的前端界面,并利用Dialogflo

    作者:禅与计算机程序设计艺术 介绍及动机 聊天机器人(Chatbot)一直是互联网领域中的热门话题。而很多聊天机器人的功能都依赖于人工智能(AI)技术。越来越多的企业希望拥有自己的聊天机器人系统,从而提升自己的竞争力。为此,业界也出现了很多基于开源技术或云

    2024年02月06日
    浏览(59)
  • React Router 中的路由导航方法:push() 和 replace() 详解

    在 React Router 中, this.props.history.push() 和 this.props.history.replace() 是用于编程式导航的两个常用方法。它们允许我们在组件中动态地更改路由,并可选地传递状态参数。本文将介绍这两个方法的用法和区别。 push() 方法将在导航时创建一个新的历史记录条目,并将用户重定向到新

    2024年03月15日
    浏览(47)
  • react ant-design实现导航菜单menu的路由设置/切换页面

    ant-design版本是5.1.1,路由版本是v6的 新版本的导航菜单路由设置与旧版的不太一样,刚开始的时候甚至不知道该怎么写 实现效果: 代码: 首先,给导航菜单的menu添加点击事件 修改item,通过设置点击事件获取点击后的key值(key值即路由跳转的页面) 打印出来看看 获取到的

    2024年02月12日
    浏览(58)
  • React Swiper.js使用(详细版)3D聚焦特效,自定义导航按钮等

    共用代码 普通版本 重点:  modules={[Navigation, Pagination]}   Swiper, SwiperSlide  没什么好说的 自定义导航按钮 / 进度条 + 解决同一页面,多个swiper.js 导航切换按钮冲突问题 这里的重点是:  1、 通过直接引入less文件 重新定义 swiper-button-prev等类 或 :global ,自定义导航按钮 / 进

    2024年02月07日
    浏览(81)
  • 路由导航守卫

    路由导航守卫有哪些: 全局守卫 组件内守卫 独享守卫 1.全局守卫 beforeEach 全局前置守卫 beforeResolve 全局解析守卫 afterEach 全局后置守卫 在创建实例的过程中,我们可以定义全局守卫: 2.独享守卫 beforeEnter 就是放到routes中定义的: const routes = [     {         name: \\\'user\\\',  

    2024年02月05日
    浏览(45)
  • 前端框架学习-React(一)

    React 应用程序是由 组件 组成的。 react 程序是用的jsx语法,使用这种语法的代码需要由babel进行解析,解析成js代码。 jsx语法: 只能返回一个根元素 所有的标签都必须闭合(自闭和或使用一对标签的方式闭合) 使用驼峰式命名法给大部分属性命名如:className 大写字母开头的

    2024年02月12日
    浏览(42)
  • 前端框架 Nextjs React 部署

    目录 一、node环境部署 二、静态导出 补充:路由问题 Nextjs打包还是非常方便的,就是网上资料不太全,导致踩了一些坑,下面是我亲自实践的两种打包方式。 一、node环境部署 这种方式最简单,也比较不容易出错,但部署时服务器需安装有node环境,速度没话说,杠杠的! 构

    2024年02月12日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包