From 0b11680aea9bddaa2df62ae694308bffd51e7ec6 Mon Sep 17 00:00:00 2001 From: houakang Date: Fri, 10 Apr 2026 15:19:12 +0800 Subject: [PATCH] =?UTF-8?q?feat(icons):=20=E6=B7=BB=E5=8A=A0=20Lucide=20?= =?UTF-8?q?=E5=9B=BE=E6=A0=87=E7=BB=84=E4=BB=B6=E5=B9=B6=E9=9B=86=E6=88=90?= =?UTF-8?q?=E5=88=B0=E9=A6=96=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 添加 Lucide Vue 图标库依赖,创建 AppIcon 基础组件用于统一管理图标 移除 .npmrc 文件并更新 pre-commit 钩子使用 npm 替代 pnpm --- .husky/pre-commit | 2 +- package-lock.json | 10 +++ package.json | 1 + src/renderer/components/base/AppIcon.vue | 30 +++++++ src/renderer/main.js | 4 +- src/renderer/views/home/HomeView.vue | 105 ++++++++++++----------- 6 files changed, 99 insertions(+), 53 deletions(-) create mode 100644 src/renderer/components/base/AppIcon.vue diff --git a/.husky/pre-commit b/.husky/pre-commit index 5ee7abd..5c3e95f 100644 --- a/.husky/pre-commit +++ b/.husky/pre-commit @@ -1 +1 @@ -pnpm exec lint-staged +npm exec lint-staged diff --git a/package-lock.json b/package-lock.json index 1cb4a9e..22cac9a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,6 +14,7 @@ "bonjour-service": "^1.3.0", "electron-squirrel-startup": "^1.0.1", "element-plus": "^2.13.6", + "lucide-vue-next": "^1.0.0", "pinia": "^3.0.4", "vue": "^3.5.32", "vue-router": "^4.6.4" @@ -8522,6 +8523,15 @@ "node": ">=12" } }, + "node_modules/lucide-vue-next": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lucide-vue-next/-/lucide-vue-next-1.0.0.tgz", + "integrity": "sha512-V6SPvx1IHTj/UY+FrIYWV5faISsPSb8BnWSFDxAtezWKvWc9ZZ40PDrdu1/Qb5vg4lHWr1hs1BAMGVGm6V1Xdg==", + "license": "ISC", + "peerDependencies": { + "vue": ">=3.0.1" + } + }, "node_modules/magic-string": { "version": "0.30.21", "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", diff --git a/package.json b/package.json index f2bb6ae..55ac5db 100644 --- a/package.json +++ b/package.json @@ -47,6 +47,7 @@ "bonjour-service": "^1.3.0", "electron-squirrel-startup": "^1.0.1", "element-plus": "^2.13.6", + "lucide-vue-next": "^1.0.0", "pinia": "^3.0.4", "vue": "^3.5.32", "vue-router": "^4.6.4" diff --git a/src/renderer/components/base/AppIcon.vue b/src/renderer/components/base/AppIcon.vue new file mode 100644 index 0000000..092267b --- /dev/null +++ b/src/renderer/components/base/AppIcon.vue @@ -0,0 +1,30 @@ + + + diff --git a/src/renderer/main.js b/src/renderer/main.js index b5d67c6..c3c3ec2 100644 --- a/src/renderer/main.js +++ b/src/renderer/main.js @@ -6,14 +6,16 @@ import 'element-plus/dist/index.css'; import router from './router'; import App from './App.vue'; import './style.css'; +import AppIcon from './components/base/AppIcon.vue'; const app = createApp(App); - // 注册所有 Element Plus 图标 for (const [key, component] of Object.entries(ElementPlusIconsVue)) { app.component(key, component); } +// 注册自定义图标组件 +app.component('AppIcon', AppIcon); app.use(createPinia()); app.use(router); app.use(ElementPlus); diff --git a/src/renderer/views/home/HomeView.vue b/src/renderer/views/home/HomeView.vue index 4b0d639..85602c0 100644 --- a/src/renderer/views/home/HomeView.vue +++ b/src/renderer/views/home/HomeView.vue @@ -8,6 +8,8 @@ 👋

准备好开始今天的创作了吗?

+ + @@ -98,73 +100,74 @@