From 6076e174d50bfc5911e3961dc08004cec7978392 Mon Sep 17 00:00:00 2001 From: Your Name Date: Thu, 23 Jul 2026 14:35:17 +0800 Subject: [PATCH] =?UTF-8?q?fix(frontend):=20=E6=92=A4=E5=9B=9E=20optimizeD?= =?UTF-8?q?eps.include=20=E9=81=BF=E5=85=8D=20element-plus=20=E8=A7=A3?= =?UTF-8?q?=E6=9E=90=E5=A4=B1=E8=B4=A5=E5=AF=BC=E8=87=B4=E5=90=AF=E5=8A=A8?= =?UTF-8?q?=E5=B4=A9=E6=BA=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 问题原因: - 上一次提交添加的 optimizeDeps.include 让 Vite 在启动阶段 就硬解析 element-plus, 包安装不完整时直接崩 (服务器起不来) - predev 脚本每次清缓存, 如果源包有问题则重建必然失败 修正: - 移除 optimizeDeps.include, Vite 自动发现预构建即可 - predev 改为可选的 dev:clean 脚本, 不影响正常启动 - start.sh 加固: 检查 element-plus/es/index.mjs 是否存在 不存在则自动 npm install 影响范围: - 其他服务器 git pull 后, start.sh 会自动检测并安装缺失依赖 - 正常 npm run dev 不再每次清缓存, 启动更快 --- frontend/package.json | 2 +- frontend/vite.config.js | 12 ------------ start.sh | 4 ++-- 3 files changed, 3 insertions(+), 15 deletions(-) diff --git a/frontend/package.json b/frontend/package.json index 4db1cb1..7cf087b 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -4,8 +4,8 @@ "version": "0.0.0", "type": "module", "scripts": { - "predev": "rm -rf node_modules/.vite", "dev": "node node_modules/vite/bin/vite.js", + "dev:clean": "rm -rf node_modules/.vite && node node_modules/vite/bin/vite.js --force", "build": "node node_modules/vite/bin/vite.js build", "preview": "node node_modules/vite/bin/vite.js preview" }, diff --git a/frontend/vite.config.js b/frontend/vite.config.js index 8c612cb..34ad7c7 100644 --- a/frontend/vite.config.js +++ b/frontend/vite.config.js @@ -11,18 +11,6 @@ export default defineConfig({ '@': fileURLToPath(new URL('./src', import.meta.url)) } }, - // 显式预构建 element-plus,避免 Vite 缓存过期后 - // 出现 "Failed to resolve entry for package element-plus" 错误 - optimizeDeps: { - include: [ - 'element-plus', - '@element-plus/icons-vue', - 'vue', - 'vue-router', - 'pinia', - 'axios' - ] - }, server: { host: '0.0.0.0', port: 3000, diff --git a/start.sh b/start.sh index 95cea5f..11a6e69 100755 --- a/start.sh +++ b/start.sh @@ -138,8 +138,8 @@ start_frontend() { cd $FRONTEND_DIR - # 检查 node_modules - if [ ! -d "node_modules" ]; then + # 检查 node_modules 及关键依赖是否完整 + if [ ! -d "node_modules" ] || [ ! -f "node_modules/element-plus/es/index.mjs" ]; then echo -e "${YELLOW}安装前端依赖...${NC}" npm install fi