1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/zuohuaijun-Admin.NET

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Это зеркальный репозиторий, синхронизируется ежедневно с исходного репозитория.
Клонировать/Скачать
authFunction.ts 1.9 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
zuohuaijun Отправлено 9 месяцев назад 7d7be0e
import { useUserInfo } from '/@/stores/userInfo';
import { judgementSameArr } from '/@/utils/arrayOperation';
import { resolveDirective, withDirectives } from 'vue';
/**
* 单个权限验证
* @param value 权限值
* @returns 有权限,返回 `true`,反之则反
*/
export function auth(value: string): boolean {
const stores = useUserInfo();
return stores.userInfos.authBtnList.some((v: string) => v === value);
}
/**
* 多个权限验证,满足一个则为 true
* @param value 权限值
* @returns 有权限,返回 `true`,反之则反
*/
export function auths(value: Array<string>): boolean {
let flag = false;
const stores = useUserInfo();
stores.userInfos.authBtnList.map((val: string) => {
value.map((v: string) => {
if (val === v) flag = true;
});
});
return flag;
}
/**
* 多个权限验证,全部满足则为 true
* @param value 权限值
* @returns 有权限,返回 `true`,反之则反
*/
export function authAll(value: Array<string>): boolean {
const stores = useUserInfo();
return judgementSameArr(value, stores.userInfos.authBtnList);
}
/**
* 单个权限验证,是否满足,返回VNode
* @param VNode 元素
* @param value 权限值
* @returns VNode
*/
export function hAuth<T extends VNode>(el: T, value: string): T {
return withDirectives(el, [[resolveDirective('auth'), value]]);
}
/**
* 多个权限验证,判断是否满足一个,返回VNode
* @param VNode 元素
* @param value 权限值
* @returns VNode
*/
export function hAuths<T extends VNode>(el: T, value: Array<string>): T {
return withDirectives(el, [[resolveDirective('auths'), value]]);
}
/**
* 多个权限验证,判断是否全部满足,返回VNode
* @param VNode 元素
* @param value 权限值
* @returns VNode
*/
export function hAuthAll<T extends VNode>(el: T, value: Array<string>): T {
return withDirectives(el, [[resolveDirective('auth-all'), value]]);
}

Комментарий ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://gitlife.ru/oschina-mirror/zuohuaijun-Admin.NET.git
git@gitlife.ru:oschina-mirror/zuohuaijun-Admin.NET.git
oschina-mirror
zuohuaijun-Admin.NET
zuohuaijun-Admin.NET
next