关于后台管理系统的路由权限的设计思路

发发牢骚
磕了一天的代码,总算是把这个后台管理系统的路由权限分配给搞出来了

关于数据库的设计

这边我的后端是用unicloud和它自带的mongodb数据库

我先设计了三张表,直接上数据图吧

  • 路由表
    字段如下懂得都懂!
    在这里插入图片描述
    在这里插入图片描述
    数据库的三个路由对应的是前端的三个动态路由
    在这里插入图片描述

  • 角色表
    在这里插入图片描述

  • 用户表

在这里插入图片描述
路由表需要按前端给的路由数据输入到后端
前端的路由表
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
添加角色的话选择权限分配就是按照路由表配置来勾选,我这边存入的到后端的数据是checkbox选择的节点
在这里插入图片描述
然后就是将后端给的路由表处理成组件数组
在这里插入图片描述
在这里插入图片描述

上面使用了addRoutes是官方提供的动态添加路由的方法,因为他不是响应式的 所以得在options.routes和 addRoutes方法一起使用
关于页面添加后刷新 变成404解决方案如下
from.name为null是刷新的时候会出现的

// 页面手动刷新触发
if(from.name===null){
   
  // 解决刷新动态路由页面的404问题
  next({
   path:to.redirectedFrom})
  return
}else{
   
  next()
}
张贴在2