微前端qiankun动态路由权限设计与数据通信方案

思路:

权限控制中心化:主应用负责统一的管理权限,子路由上报路由信息

动态路由加载:根据用户权限动态注册可用路由

数据通信机制

主应用和子应用:通过qiankun提供的props和全局状态

子应用和子应用:通过全局事件总线或状态管理

代码实现:

主应用配置:路由权限管理(src/permission.js)

复制代码
import {asyncRoutes} from './router'
import {getPermissionFromApi} from '@/api/auth'

const permission = {
    state: {
        routes: [],
        addRoutes: []
    },
    mutations:{
        SET_ROUTES:(state,routes) => {
            state.addRoutes = routes
            state.routes = constantRoutes.concat(routes)
        }
    },
    actions:{
        // 生成动态路由
        GenerateRoutes({commit},roles)
    }
}
相关推荐
夏子曦4 小时前
webpack 的工作流程
前端·webpack·node.js
麻芝汤圆4 小时前
在 Sheel 中运行 Spark:开启高效数据处理之旅
大数据·前端·javascript·hadoop·分布式·ajax·spark
yrldjsbk4 小时前
uniapp开发09-设置一个tabbar底部导航栏且配置icon图标
前端·uni-app
源码方舟5 小时前
【HTML5】显示-隐藏法 实现网页轮播图效果
前端·javascript·html·css3·html5
二川bro5 小时前
依赖注入详解与案例(前端篇)
前端
神秘代码行者7 小时前
Vue项目Git提交流程集成
前端·vue.js·git
阿黄学技术8 小时前
Vite简单介绍
前端·前端框架·vue
264玫瑰资源库9 小时前
网狐飞云娱乐三端源码深度实测:组件结构拆解与部署Bug复盘指南(附代码分析)
java·开发语言·前端·bug·娱乐
济南壹软网络科技-专注源码开发数十年!9 小时前
盲盒源码_盲盒系统_盲盒定制开发 盲盒搭建前端教程
开发语言·前端·uni-app·php
哟哟耶耶10 小时前
react-13react中外部css引入以及style内联样式(动态className与动态style)
前端·css·react.js