Pārlūkot izejas kodu

new file routes

may_zhouwei 4 gadi atpakaļ
vecāks
revīzija
02e6064997
1 mainītis faili ar 22 papildinājumiem un 33 dzēšanām
  1. 22 33
      src/store/modules/routes.js

+ 22 - 33
src/store/modules/routes.js

@@ -1,10 +1,10 @@
 /**
 /**
- * @author chuzhixin 1204505056@qq.com
+ * @copyright chuzhixin 1204505056@qq.com
  * @description 路由拦截状态管理,目前两种模式:all模式与intelligence模式,其中partialRoutes是菜单暂未使用
  * @description 路由拦截状态管理,目前两种模式:all模式与intelligence模式,其中partialRoutes是菜单暂未使用
  */
  */
 import { asyncRoutes, constantRoutes } from "@/router";
 import { asyncRoutes, constantRoutes } from "@/router";
 import { getRouterList } from "@/api/router";
 import { getRouterList } from "@/api/router";
-import { convertRouter, filterRoutes } from "@/utils/routes";
+import { filterAllRoutes, filterAsyncRoutes } from "@/utils/handleRoutes";
 
 
 const state = { routes: [], partialRoutes: [] };
 const state = { routes: [], partialRoutes: [] };
 const getters = {
 const getters = {
@@ -13,46 +13,35 @@ const getters = {
 };
 };
 const mutations = {
 const mutations = {
   setRoutes(state, routes) {
   setRoutes(state, routes) {
-    state.routes = routes;
+    state.routes = constantRoutes.concat(routes);
+  },
+  setAllRoutes(state, routes) {
+    state.routes = constantRoutes.concat(routes);
   },
   },
   setPartialRoutes(state, routes) {
   setPartialRoutes(state, routes) {
-    state.partialRoutes = routes;
+    state.partialRoutes = constantRoutes.concat(routes);
   },
   },
 };
 };
 const actions = {
 const actions = {
-  /**
+  async setRoutes({ commit }, permissions) {
-   * @author chuzhixin 1204505056@qq.com
+    //开源版只过滤动态路由permissions,admin不再默认拥有全部权限
-   * @description intelligence模式设置路由
+    const finallyAsyncRoutes = await filterAsyncRoutes(
-   * @param {*} { commit }
+      [...asyncRoutes],
-   * @returns
+      permissions
-   */
+    );
-  async setRoutes({ commit }) {
+    commit("setRoutes", finallyAsyncRoutes);
-    const finallyRoutes = filterRoutes([...constantRoutes, ...asyncRoutes]);
+    return finallyAsyncRoutes;
-    commit("setRoutes", finallyRoutes);
-    return [...asyncRoutes];
   },
   },
-  /**
-   * @author chuzhixin 1204505056@qq.com
-   * @description all模式设置路由
-   * @param {*} { commit }
-   * @returns
-   */
   async setAllRoutes({ commit }) {
   async setAllRoutes({ commit }) {
     let { data } = await getRouterList();
     let { data } = await getRouterList();
-    if (data[data.length - 1].path !== "*")
+    data.push({ path: "*", redirect: "/404", hidden: true });
-      data.push({ path: "*", redirect: "/404", hidden: true });
+    let accessRoutes = filterAllRoutes(data);
-    const finallyRoutes = filterRoutes(convertRouter(data));
+    commit("setAllRoutes", accessRoutes);
-    commit("setRoutes", finallyRoutes);
+    return accessRoutes;
-    return finallyRoutes;
   },
   },
-  /**
+  setPartialRoutes({ commit }, accessRoutes) {
-   * @author chuzhixin 1204505056@qq.com
+    commit("setPartialRoutes", accessRoutes);
-   * @description 画廊布局、综合布局设置路由
+    return accessRoutes;
-   * @param {*} { commit }
-   * @param accessedRoutes 画廊布局、综合布局设置路由
-   */
-  setPartialRoutes({ commit }, accessedRoutes) {
-    commit("setPartialRoutes", accessedRoutes);
   },
   },
 };
 };
 export default { state, getters, mutations, actions };
 export default { state, getters, mutations, actions };