umi学习笔记

一、路由

  • 静态路由/动态路由

 这是动态路由

静态路由是启动应用的时候把所有路由模块都加载进来

动态路由是当你访问到这个页面,才把对应的组件加载

[]可包文件或文件夹

 

  • wrappers 用于配置路由的高阶组件封装

可以用于路由级别的权限校验(路由权限校验/路由守卫)

export default {
  routes: [
    { path: '/user', component: 'user',
      wrappers: [
        '@/wrappers/auth',
      ],
    },
    { path: '/login', component: 'login' },
  ]
}

然后在 src/wrappers/auth 中,

import { Redirect } from 'umi'
export default (props) => {
  const { isLogin } = useAuth();
  if (isLogin) {
    return <div>{ props.children }</div>;
  } else {
    return <Redirect to="/login" />;
  }
}

这样,访问 /user,就通过 useAuth 做权限校验,如果通过,渲染 src/pages/user,否则跳转到 /login,由 src/pages/login 进行渲染。

 

 

posted @ 2020-08-06 17:42  一路向北√  阅读(720)  评论(0编辑  收藏  举报

web应用开发&研究 -

业精于勤而荒于嬉。

工作,使我快乐。


Font Awesome | Respond.js | Bootstrap中文网