微前端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 分钟前
css 设置边框
前端·css
星爷AG I26 分钟前
9-24 视觉叙事(AGI基础理论)
前端·人工智能
2501_9400078930 分钟前
Flutter for OpenHarmony三国杀攻略App实战 - 鸿蒙适配与打包发布
前端·flutter
css趣多多30 分钟前
跨域问题及Vue项目中本地/线上解决方法核心总结
前端
光影少年38 分钟前
前端 AIGC
前端·aigc
启山智软1 小时前
供应链商城核心功能模块清单
java·前端·开源
徐同保1 小时前
Claude Code提示词案例(开发复杂动态路由详情页面)
前端
Σdoughty1 小时前
python第三次作业
开发语言·前端·python
白中白121381 小时前
Vue系列-2
前端·javascript·vue.js
CHU7290351 小时前
一番赏盲盒小程序前端功能:层级乐趣与便捷服务的双向赋能
前端·小程序