Template
1
0
mirror of https://github.com/un-pany/v3-admin-vite.git synced 2025-04-20 10:59:21 +08:00

refactor: 合并 directives 目录到 plugins 目录

This commit is contained in:
pany 2024-11-27 11:17:38 +08:00
parent f6668e471c
commit dc48bf4880
4 changed files with 10 additions and 15 deletions

View File

@ -1,7 +0,0 @@
import type { App } from "vue"
import { permission } from "./permission"
/** 加载自定义指令 */
export function loadDirectives(app: App) {
app.directive("permission", permission)
}

View File

@ -4,7 +4,6 @@ import { pinia } from "@/pinia"
import { router } from "@/router"
import { createApp } from "vue"
// load
import { loadDirectives } from "@/directives"
import { loadPlugins } from "@/plugins"
// css
import "uno.css"
@ -17,12 +16,9 @@ import "@@/assets/styles/index.scss"
const app = createApp(App)
// 加载插件
// 加载插件(全局组件、自定义指令等)
loadPlugins(app)
// 加载自定义指令
loadDirectives(app)
app.use(pinia).use(router)
router.isReady().then(() => {

View File

@ -1,12 +1,14 @@
import type { App } from "vue"
import { loadElementPlus } from "./element-plus"
import { loadElementPlusIcons } from "./element-plus-icons"
import { loadPermissionDirective } from "./permission-directive"
import { loadSvgIcons } from "./svg-icons"
import { loadVxeTable } from "./vxe-table"
export function loadPlugins(app: App) {
loadElementPlus(app)
loadElementPlusIcons(app)
loadVxeTable(app)
loadPermissionDirective(app)
loadSvgIcons(app)
loadVxeTable(app)
}

View File

@ -1,4 +1,4 @@
import type { Directive } from "vue"
import type { App, Directive } from "vue"
import { useUserStore } from "@/pinia/stores/user"
import { isArray } from "@@/utils/validate"
@ -6,7 +6,7 @@ import { isArray } from "@@/utils/validate"
* @name
* @description checkPermission
*/
export const permission: Directive = {
const permission: Directive = {
mounted(el, binding) {
const { value: permissionRoles } = binding
const { roles } = useUserStore()
@ -19,3 +19,7 @@ export const permission: Directive = {
}
}
}
export function loadPermissionDirective(app: App) {
app.directive("permission", permission)
}