diff --git a/src/assets/icons/svg/404.svg b/src/assets/icons/404.svg similarity index 100% rename from src/assets/icons/svg/404.svg rename to src/assets/icons/404.svg diff --git a/src/assets/icons/svg/bug.svg b/src/assets/icons/bug.svg similarity index 100% rename from src/assets/icons/svg/bug.svg rename to src/assets/icons/bug.svg diff --git a/src/assets/icons/svg/component.svg b/src/assets/icons/component.svg similarity index 100% rename from src/assets/icons/svg/component.svg rename to src/assets/icons/component.svg diff --git a/src/assets/icons/svg/dashboard.svg b/src/assets/icons/dashboard.svg similarity index 100% rename from src/assets/icons/svg/dashboard.svg rename to src/assets/icons/dashboard.svg diff --git a/src/assets/icons/svg/fullscreen-exit.svg b/src/assets/icons/fullscreen-exit.svg similarity index 100% rename from src/assets/icons/svg/fullscreen-exit.svg rename to src/assets/icons/fullscreen-exit.svg diff --git a/src/assets/icons/svg/fullscreen.svg b/src/assets/icons/fullscreen.svg similarity index 100% rename from src/assets/icons/svg/fullscreen.svg rename to src/assets/icons/fullscreen.svg diff --git a/src/assets/icons/svg/keyboard-down.svg b/src/assets/icons/keyboard-down.svg similarity index 100% rename from src/assets/icons/svg/keyboard-down.svg rename to src/assets/icons/keyboard-down.svg diff --git a/src/assets/icons/svg/keyboard-enter.svg b/src/assets/icons/keyboard-enter.svg similarity index 100% rename from src/assets/icons/svg/keyboard-enter.svg rename to src/assets/icons/keyboard-enter.svg diff --git a/src/assets/icons/svg/keyboard-esc.svg b/src/assets/icons/keyboard-esc.svg similarity index 100% rename from src/assets/icons/svg/keyboard-esc.svg rename to src/assets/icons/keyboard-esc.svg diff --git a/src/assets/icons/svg/keyboard-up.svg b/src/assets/icons/keyboard-up.svg similarity index 100% rename from src/assets/icons/svg/keyboard-up.svg rename to src/assets/icons/keyboard-up.svg diff --git a/src/assets/icons/svg/link.svg b/src/assets/icons/link.svg similarity index 100% rename from src/assets/icons/svg/link.svg rename to src/assets/icons/link.svg diff --git a/src/assets/icons/svg/lock.svg b/src/assets/icons/lock.svg similarity index 100% rename from src/assets/icons/svg/lock.svg rename to src/assets/icons/lock.svg diff --git a/src/assets/icons/svg/menu.svg b/src/assets/icons/menu.svg similarity index 100% rename from src/assets/icons/svg/menu.svg rename to src/assets/icons/menu.svg diff --git a/src/assets/icons/svg/search.svg b/src/assets/icons/search.svg similarity index 100% rename from src/assets/icons/svg/search.svg rename to src/assets/icons/search.svg diff --git a/src/assets/icons/svg/unocss.svg b/src/assets/icons/unocss.svg similarity index 100% rename from src/assets/icons/svg/unocss.svg rename to src/assets/icons/unocss.svg diff --git a/src/main.ts b/src/main.ts index b536d53..9e8b4d6 100644 --- a/src/main.ts +++ b/src/main.ts @@ -5,7 +5,6 @@ import { router } from "@/router" import { createApp } from "vue" import "@/router/permission" // load -import { loadSvg } from "@/assets/icons" import { loadDirectives } from "@/directives" import { loadPlugins } from "@/plugins" // css @@ -21,8 +20,6 @@ const app = createApp(App) // 加载插件 loadPlugins(app) -// 加载全局 SVG -loadSvg(app) // 加载自定义指令 loadDirectives(app) diff --git a/src/plugins/element-plus-icon/index.ts b/src/plugins/element-plus-icons/index.ts similarity index 83% rename from src/plugins/element-plus-icon/index.ts rename to src/plugins/element-plus-icons/index.ts index 9a74db4..9b22128 100644 --- a/src/plugins/element-plus-icon/index.ts +++ b/src/plugins/element-plus-icons/index.ts @@ -1,7 +1,7 @@ import type { App } from "vue" import * as ElementPlusIconsVue from "@element-plus/icons-vue" -export function loadElementPlusIcon(app: App) { +export function loadElementPlusIcons(app: App) { // 注册所有 Element Plus Icon for (const [key, component] of Object.entries(ElementPlusIconsVue)) { app.component(key, component) diff --git a/src/plugins/index.ts b/src/plugins/index.ts index a391748..7d84900 100644 --- a/src/plugins/index.ts +++ b/src/plugins/index.ts @@ -1,10 +1,12 @@ import type { App } from "vue" import { loadElementPlus } from "./element-plus" -import { loadElementPlusIcon } from "./element-plus-icon" +import { loadElementPlusIcons } from "./element-plus-icons" +import { loadSvgIcons } from "./svg-icons" import { loadVxeTable } from "./vxe-table" export function loadPlugins(app: App) { loadElementPlus(app) - loadElementPlusIcon(app) + loadElementPlusIcons(app) loadVxeTable(app) + loadSvgIcons(app) } diff --git a/src/assets/icons/index.ts b/src/plugins/svg-icons/index.ts similarity index 81% rename from src/assets/icons/index.ts rename to src/plugins/svg-icons/index.ts index 433e764..9575884 100644 --- a/src/assets/icons/index.ts +++ b/src/plugins/svg-icons/index.ts @@ -2,6 +2,6 @@ import type { App } from "vue" import SvgIcon from "@/components/SvgIcon/index.vue" // Svg Component import "virtual:svg-icons-register" -export function loadSvg(app: App) { +export function loadSvgIcons(app: App) { app.component("SvgIcon", SvgIcon) } diff --git a/types/vue-router.d.ts b/types/vue-router.d.ts index 0cbfaeb..1a86473 100644 --- a/types/vue-router.d.ts +++ b/types/vue-router.d.ts @@ -9,7 +9,7 @@ declare module "vue-router" { */ title?: string /** - * 设置该路由的图标,记得将 svg 导入 @/assets/icons/svg + * 设置该路由的图标,记得将 svg 导入 @/assets/icons */ svgIcon?: string /** diff --git a/vite.config.ts b/vite.config.ts index 22115d7..081aa85 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -91,7 +91,7 @@ export default defineConfig(({ mode }) => { svgLoader({ defaultImport: "url" }), // 生成 SVG 雪碧图 createSvgIconsPlugin({ - iconDirs: [resolve(root, "src/assets/icons/svg")], + iconDirs: [resolve(root, "src/assets/icons")], symbolId: "icon-[dir]-[name]" }), // 原子化 CSS