umi实现路由鉴权

什么是路由鉴权?

路由鉴权:简单来说就是未登录不能够访问内容的页面。

1. 在src目录下创建 src/wrappers/auth。

代码如下:

import React from 'react';
// const { Redirect } = require('dva').router;
import {Redirect} from 'umi'

const AuthRouter = (props: any) => {
  // 这个根据自己判断是否登录
  const isLogin = window.localStorage.getItem('fxhlogin') ? true : false;
  return (
    isLogin ? <div>{props.children}</div> : <Redirect to="/" />
  )
}

export default  AuthRouter


此处fxhlogin是自己设置的token名称 ,Redirect是重定向到登录。

2. 在src目录下创建一个login文件夹和home文件夹

login是登录需要的内容,home是内部页面,未登录不能够访问。

3. 最后在.umirc.ts中使用wrappers: [‘@/wrappers/auth’]

代码如下:

routes: [
    // 登录
    { path: "/", component: "@/pages/login/index" },
    {
      path: "/", component: "@/layouts/index", wrappers: ['@/wrappers/auth',],
      routes: [

        { path: "/shop", component: "@/pages/shop/index" },
        { path: "/book", component: "@/pages/book/index" },
      ]
    },
  ],
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夏兮颜☆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值