增加悬浮窗功能
This commit is contained in:
37
src/store/modules/quick.ts
Normal file
37
src/store/modules/quick.ts
Normal file
@@ -0,0 +1,37 @@
|
||||
|
||||
import { store } from "@/store";
|
||||
import quickApi, { type QuickMenu } from "@/api/account/quick";
|
||||
import { usePermissionStoreHook } from "@/store/modules/permission";
|
||||
|
||||
|
||||
export const useQuickStore = defineStore("quick", () => {
|
||||
const quickMenus = ref<QuickMenu[]>([]);
|
||||
|
||||
async function getQuickMenus() {
|
||||
const res = await quickApi.getList({ isEdit: 0 });
|
||||
const obj: any = {}
|
||||
let arr = []
|
||||
for (let menu of res) {
|
||||
if (obj.hasOwnProperty(menu.menuId) || menu.status != 1 || !usePermissionStoreHook().returnMenuName(menu.menuId)) {
|
||||
continue;
|
||||
} else {
|
||||
obj[menu.menuId] = true;
|
||||
arr.push(menu)
|
||||
}
|
||||
}
|
||||
quickMenus.value = arr;
|
||||
}
|
||||
getQuickMenus()
|
||||
return {
|
||||
quickMenus, getQuickMenus
|
||||
};
|
||||
});
|
||||
|
||||
/**
|
||||
* 用于在组件外部(如在Pinia Store 中)使用 Pinia 提供的 store 实例。
|
||||
* 官方文档解释了如何在组件外部使用 Pinia Store:
|
||||
* https://pinia.vuejs.org/core-concepts/outside-component-usage.html#using-a-store-outside-of-a-component
|
||||
*/
|
||||
export function useQuickStoreHook() {
|
||||
return useQuickStore(store);
|
||||
}
|
||||
Reference in New Issue
Block a user