目标: 配置私有路由的功能
核心点:把私有路由的模块分离出来,单独配置功能点
export const privateRoutes = [...] export const publicRoutes = [...] const router = createRouter({ history: createWebHashHistory(), routes: publicRoutes })
// 专门处理权限路由的模块 import { publicRoutes, privateRoutes } from '@/router' export default { namespaced: true, state: { // 路由表:初始拥有静态路由权限 routes: publicRoutes }, mutations: { /** * 增加路由 */ setRoutes(state, newRoutes) { // 永远在静态路由的基础上增加新路由 state.routes = [...publicRoutes, ...newRoutes] } }, actions: { /** * 根据权限筛选路由 */ filterRoutes(context, menus) { } } }
谢谢老师,讲的非常细致,很容易懂。这一节学的为定义页面权限控制动作,实现页面权限控制的第一部分。就是重组我们的动态 路由,不再把私有路由添加到路由表中,把私有路由单独拧出来,然后每个对应的页面路由把对应的功能点分割出来。页面路由放 到vuex里面作为一个新的vuex的js去做这个路由,到时候我们权限控制页面路由的时候能够直接使用。每个页面路由都加name来 进行匹配。