Browse Source

types: complete dirctives and v-role custom color (#3718)

* types: complete dirctives

* chore: v-auth custom color
pull/3725/head
sea 2 years ago
committed by GitHub
parent
commit
890ff8f338
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 1
      .vscode/extensions.json
  2. 12
      .vscode/settings.json
  3. 3
      src/directives/permission.ts
  4. 11
      types/directives.d.ts

1
.vscode/extensions.json

@ -9,5 +9,6 @@
"antfu.iconify",
"antfu.unocss",
"mikestead.dotenv",
"warmthsea.vscode-custom-code-color",
]
}

12
.vscode/settings.json

@ -108,7 +108,11 @@
"i18n-ally.sortKeys": true,
"i18n-ally.namespace": true,
"i18n-ally.pathMatcher": "{locale}/{namespaces}.{ext}",
"i18n-ally.enabledParsers": ["json","ts","js"],
"i18n-ally.enabledParsers": [
"json",
"ts",
"js"
],
"i18n-ally.sourceLanguage": "en",
"i18n-ally.displayLanguage": "zh-CN",
"i18n-ally.enabledFrameworks": [
@ -182,5 +186,7 @@
".eslintrc.cjs": ".eslintignore,.prettierignore,.stylelintignore,.commitlintrc.*,.prettierrc.*,.stylelintrc.*"
},
"terminal.integrated.scrollback": 10000,
"nuxt.isNuxtApp": false
}
"nuxt.isNuxtApp": false,
"vscodeCustomCodeColor.highlightValue": "v-auth",
"vscodeCustomCodeColor.highlightValueColor": "#6366f1",
}

3
src/directives/permission.ts

@ -6,6 +6,7 @@
import type { App, Directive, DirectiveBinding } from 'vue';
import { usePermission } from '@/hooks/web/usePermission';
import { RoleEnum } from '@/enums/roleEnum';
function isAuth(el: Element, binding: any) {
const { hasPermission } = usePermission();
@ -17,7 +18,7 @@ function isAuth(el: Element, binding: any) {
}
}
const mounted = (el: Element, binding: DirectiveBinding<any>) => {
const mounted = (el: Element, binding: DirectiveBinding<string | string[] | RoleEnum[]>) => {
isAuth(el, binding);
};

11
types/directives.d.ts

@ -0,0 +1,11 @@
import type { Directive } from 'vue';
import { RoleEnum } from '@/enums/roleEnum';
declare module 'vue' {
export interface ComponentCustomProperties {
vLoading: Directive<Element, boolean>;
vAuth: Directive<Element, string | string[] | RoleEnum[]>;
}
}
export {};
Loading…
Cancel
Save