admin-22.04.18:更新版本v2.1.0,更新内容查看根目录CHANGELOG.md

This commit is contained in:
lyt
2022-04-18 19:14:38 +08:00
parent 8c216f6e94
commit 6dcc2c78c1
131 changed files with 6181 additions and 1401 deletions

View File

@ -1,5 +1,5 @@
import type { App } from 'vue';
import { store } from '/@/store/index.ts';
import { useUserInfo } from '/@/stores/userInfo';
import { judementSameArr } from '/@/utils/arrayOperation';
/**
@ -12,14 +12,16 @@ export function authDirective(app: App) {
// 单个权限验证v-auth="xxx"
app.directive('auth', {
mounted(el, binding) {
if (!store.state.userInfos.userInfos.authBtnList.some((v: string) => v === binding.value)) el.parentNode.removeChild(el);
const stores = useUserInfo();
if (!stores.userInfos.authBtnList.some((v: string) => v === binding.value)) el.parentNode.removeChild(el);
},
});
// 多个权限验证满足一个则显示v-auths="[xxx,xxx]"
app.directive('auths', {
mounted(el, binding) {
let flag = false;
store.state.userInfos.userInfos.authBtnList.map((val: string) => {
const stores = useUserInfo();
stores.userInfos.authBtnList.map((val: string) => {
binding.value.map((v: string) => {
if (val === v) flag = true;
});
@ -30,7 +32,8 @@ export function authDirective(app: App) {
// 多个权限验证全部满足则显示v-auth-all="[xxx,xxx]"
app.directive('auth-all', {
mounted(el, binding) {
const flag = judementSameArr(binding.value, store.state.userInfos.userInfos.authBtnList);
const stores = useUserInfo();
const flag = judementSameArr(binding.value, stores.userInfos.authBtnList);
if (!flag) el.parentNode.removeChild(el);
},
});

View File

@ -1,4 +1,4 @@
import { store } from '/@/store/index.ts';
import { useUserInfo } from '/@/stores/userInfo';
import { judementSameArr } from '/@/utils/arrayOperation';
/**
@ -7,7 +7,8 @@ import { judementSameArr } from '/@/utils/arrayOperation';
* @returns 有权限,返回 `true`,反之则反
*/
export function auth(value: string): boolean {
return store.state.userInfos.userInfos.authBtnList.some((v: string) => v === value);
const stores = useUserInfo();
return stores.userInfos.authBtnList.some((v: string) => v === value);
}
/**
@ -17,7 +18,8 @@ export function auth(value: string): boolean {
*/
export function auths(value: Array<string>): boolean {
let flag = false;
store.state.userInfos.userInfos.authBtnList.map((val: string) => {
const stores = useUserInfo();
stores.userInfos.authBtnList.map((val: string) => {
value.map((v: string) => {
if (val === v) flag = true;
});
@ -31,5 +33,6 @@ export function auths(value: Array<string>): boolean {
* @returns 有权限,返回 `true`,反之则反
*/
export function authAll(value: Array<string>): boolean {
return judementSameArr(value, store.state.userInfos.userInfos.authBtnList);
const stores = useUserInfo();
return judementSameArr(value, stores.userInfos.authBtnList);
}

View File

@ -2,7 +2,9 @@ import { nextTick } from 'vue';
import type { App } from 'vue';
import * as svg from '@element-plus/icons-vue';
import router from '/@/router/index';
import { store } from '/@/store/index';
import pinia from '/@/stores/index';
import { storeToRefs } from 'pinia';
import { useThemeConfig } from '/@/stores/themeConfig';
import { i18n } from '/@/i18n/index';
import { Local } from '/@/utils/storage';
import SvgIcon from '/@/components/svgIcon/index.vue';
@ -25,9 +27,11 @@ export function elSvg(app: App) {
* @method const title = useTitle(); ==> title()
*/
export function useTitle() {
const stores = useThemeConfig(pinia);
const { themeConfig } = storeToRefs(stores);
nextTick(() => {
let webTitle = '';
let globalTitle: string = store.state.themeConfig.themeConfig.globalTitle;
let globalTitle: string = themeConfig.value.globalTitle;
router.currentRoute.value.path === '/login'
? (webTitle = router.currentRoute.value.meta.title as any)
: (webTitle = i18n.global.t(router.currentRoute.value.meta.title as any));
@ -63,7 +67,11 @@ export const lazyImg = (el: any, arr: any) => {
* 全局组件大小
* @returns 返回 `window.localStorage` 中读取的缓存值 `globalComponentSize`
*/
export const globalComponentSize: string = Local.get('themeConfig')?.globalComponentSize || store.state.themeConfig.themeConfig?.globalComponentSize;
export const globalComponentSize = (): string => {
const stores = useThemeConfig(pinia);
const { themeConfig } = storeToRefs(stores);
return Local.get('themeConfig')?.globalComponentSize || themeConfig.value?.globalComponentSize;
};
/**
* 对象深克隆
@ -128,7 +136,7 @@ export function handleEmpty(list: any) {
* @method elSvg 导出全局注册 element plus svg 图标
* @method useTitle 设置浏览器标题国际化
* @method lazyImg 图片懒加载
* @method globalComponentSize element plus 全局组件大小
* @method globalComponentSize() element plus 全局组件大小
* @method deepClone 对象深克隆
* @method isMobile 判断是否是移动端
* @method handleEmpty 判断数组对象中所有属性是否为空,为空则删除当前行对象
@ -143,7 +151,9 @@ const other = {
lazyImg: (el: any, arr: any) => {
lazyImg(el, arr);
},
globalComponentSize,
globalComponentSize: () => {
globalComponentSize();
},
deepClone: (obj: any) => {
deepClone(obj);
},