Browse Source

fix(v-auth): ensure the background mode is correct close #330

Vben 4 years ago
parent
commit
67962f1dee

+ 5 - 5
build/config/themeConfig.ts

@@ -38,22 +38,22 @@ export function generateColors({
   tinycolor,
 }: GenerateColorsParams) {
   const arr = new Array(19).fill(0);
-  const lightens = arr.map((t, i) => {
+  const lightens = arr.map((_t, i) => {
     return mixLighten(color, i / 5);
   });
 
-  const darkens = arr.map((t, i) => {
+  const darkens = arr.map((_t, i) => {
     return mixDarken(color, i / 5);
   });
 
-  const alphaColors = arr.map((t, i) => {
+  const alphaColors = arr.map((_t, i) => {
     return tinycolor(color)
       .setAlpha(i / 20)
       .toRgbString();
   });
 
   const tinycolorLightens = arr
-    .map((t, i) => {
+    .map((_t, i) => {
       return tinycolor(color)
         .lighten(i * 5)
         .toHexString();
@@ -61,7 +61,7 @@ export function generateColors({
     .filter((item) => item !== '#ffffff');
 
   const tinycolorDarkens = arr
-    .map((t, i) => {
+    .map((_t, i) => {
       return tinycolor(color)
         .darken(i * 5)
         .toHexString();

+ 0 - 19
src/components/SimpleMenu/src/components/menu.less

@@ -111,7 +111,6 @@
 
       .@{menu-prefix-cls}-submenu-active {
         color: @primary-color !important;
-        // background: fade(@primary-color, 8);
 
         &-border {
           .light-border();
@@ -120,8 +119,6 @@
     }
 
     &-dark {
-      // background: @menu-dark;
-
       .@{menu-prefix-cls}-submenu-active {
         color: #fff !important;
       }
@@ -137,7 +134,6 @@
       cursor: pointer;
       outline: none;
       align-items: center;
-      // transition: all @transition-time @ease-in-out;
 
       &:hover,
       &:active {
@@ -264,12 +260,7 @@
 
       &:hover {
         color: #fff;
-        // background: @menu-dark;
       }
-
-      // &-active:not(.@{menu-prefix-cls}-submenu) {
-      //   color: @primary-color;
-      // }
     }
 
     &-dark&-vertical&-collapse {
@@ -296,11 +287,6 @@
     }
 
     &-dark&-vertical &-submenu &-item {
-      // &:hover {
-      //   color: #fff;
-      //   background: transparent;
-      // }
-
       &-active,
       &-active:hover {
         color: #fff;
@@ -313,11 +299,6 @@
     }
 
     &-dark&-vertical &-opened {
-      // background: @menu-dark-active-bg;
-      // .@{menu-prefix-cls}-submenu-title {
-      //   background: @menu-dark;
-      // }
-
       .@{menu-prefix-cls}-submenu-has-parent-submenu {
         .@{menu-prefix-cls}-submenu-title {
           background: transparent;

+ 0 - 3
src/design/var/index.less

@@ -32,9 +32,6 @@
 
 @page-footer-z-index: 99;
 
-// left-menu
-@app-menu-item-height: 42px;
-
 .bem(@n; @content) {
   @{namespace}-@{n} {
     @content();

+ 0 - 13
src/directives/permission.ts

@@ -5,9 +5,7 @@
  */
 import type { App, Directive, DirectiveBinding } from 'vue';
 
-import projectSetting from '/@/settings/projectSetting';
 import { usePermission } from '/@/hooks/web/usePermission';
-import { PermissionModeEnum } from '/@/enums/appEnum';
 
 function isAuth(el: Element, binding: any) {
   const { hasPermission } = usePermission();
@@ -19,23 +17,12 @@ function isAuth(el: Element, binding: any) {
   }
 }
 
-function isBackMode() {
-  return projectSetting.permissionMode === PermissionModeEnum.BACK;
-}
-
 const mounted = (el: Element, binding: DirectiveBinding<any>) => {
-  if (isBackMode()) return;
-  isAuth(el, binding);
-};
-
-const updated = (el: Element, binding: DirectiveBinding<any>) => {
-  if (!isBackMode()) return;
   isAuth(el, binding);
 };
 
 const authDirective: Directive = {
   mounted,
-  updated,
 };
 
 export function setupPermissionDirective(app: App) {

+ 5 - 0
src/layouts/default/header/index.less

@@ -175,6 +175,11 @@
 
     .@{header-prefix-cls}-action {
       &__item {
+        .app-iconify {
+          padding: 0 10px;
+          font-size: 16px !important;
+        }
+
         &:hover {
           background: @header-dark-bg-hover-color;
         }

+ 11 - 0
src/store/modules/permission.ts

@@ -13,6 +13,7 @@ import { asyncRoutes } from '/@/router/routes';
 import { filter } from '/@/utils/helper/treeHelper';
 import { toRaw } from 'vue';
 import { getMenuListById } from '/@/api/sys/menu';
+import { getPermCodeByUserId } from '/@/api/sys/user';
 
 import { transformObjToRoute, flatRoutes } from '/@/router/helper/routeHelper';
 import { transformRouteToMenu } from '/@/router/helper/menuHelper';
@@ -82,6 +83,12 @@ class Permission extends VuexModule {
     this.lastBuildMenuTimeState = 0;
   }
 
+  @Action
+  async changePermissionCode(userId: string) {
+    const codeList = await getPermCodeByUserId({ userId });
+    this.commitPermCodeListState(codeList);
+  }
+
   @Action
   async buildRoutesAction(id?: number | string): Promise<AppRouteRecordRaw[]> {
     const { t } = useI18n();
@@ -106,6 +113,10 @@ class Permission extends VuexModule {
       });
       // Here to get the background routing menu logic to modify by yourself
       const paramId = id || userStore.getUserInfoState.userId;
+
+      // !Simulate to obtain permission codes from the background,
+      // this function may only need to be executed once, and the actual project can be put at the right time by itself
+      this.changePermissionCode('1');
       if (!paramId) {
         throw new Error('paramId is undefined!');
       }

+ 3 - 7
src/views/demo/permission/back/Btn.vue

@@ -59,7 +59,6 @@
   import CurrentPermissionMode from '../CurrentPermissionMode.vue';
   import { usePermission } from '/@/hooks/web/usePermission';
   import { Authority } from '/@/components/Authority';
-  import { getPermCodeByUserId } from '/@/api/sys/user';
   import { permissionStore } from '/@/store/modules/permission';
   import { PermissionModeEnum } from '/@/enums/appEnum';
   import { PageWrapper } from '/@/components/Page';
@@ -69,13 +68,10 @@
     setup() {
       const { hasPermission } = usePermission();
 
-      // !模拟从后台获取权限编码, 该函数可能只需要执行一次,实际项目可以自行放到合适的时机
-      async function changePermissionCode(userId: string) {
-        const codeList = await getPermCodeByUserId({ userId });
-        permissionStore.commitPermCodeListState(codeList);
+      function changePermissionCode(userId: string) {
+        permissionStore.changePermissionCode(userId);
       }
-      // 默认初始化为1
-      changePermissionCode('1');
+
       return {
         hasPermission,
         permissionStore,