deploy.bat 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. @echo off
  2. chcp 65001 >nul
  3. echo ============================================
  4. echo Snapshot 前端部署脚本
  5. echo ============================================
  6. echo.
  7. REM 检查Node.js环境
  8. echo [1/5] 检查Node.js环境...
  9. node -v >nul 2>&1
  10. if %errorlevel% neq 0 (
  11. echo ❌ 错误:未检测到Node.js环境
  12. echo 请安装Node.js 16或更高版本
  13. pause
  14. exit /b 1
  15. )
  16. echo ✅ Node.js环境检查通过
  17. node -v
  18. echo.
  19. REM 检查npm环境
  20. echo [2/5] 检查npm环境...
  21. call npm -v >nul 2>&1
  22. if %errorlevel% neq 0 (
  23. echo ❌ 错误:未检测到npm环境
  24. pause
  25. exit /b 1
  26. )
  27. echo ✅ npm环境检查通过
  28. npm -v
  29. echo.
  30. REM 安装依赖
  31. echo [3/5] 安装项目依赖...
  32. if not exist "node_modules" (
  33. echo 正在安装依赖,请稍候...
  34. call npm install
  35. if %errorlevel% neq 0 (
  36. echo ❌ 依赖安装失败
  37. pause
  38. exit /b 1
  39. )
  40. echo ✅ 依赖安装完成
  41. ) else (
  42. echo ✅ 依赖已存在,跳过安装
  43. )
  44. echo.
  45. REM 构建项目
  46. echo [4/5] 构建项目...
  47. call npm run build
  48. if %errorlevel% neq 0 (
  49. echo ❌ 项目构建失败
  50. pause
  51. exit /b 1
  52. )
  53. echo ✅ 项目构建完成
  54. echo.
  55. REM 启动开发服务器
  56. echo [5/5] 启动开发服务器...
  57. echo.
  58. echo ============================================
  59. echo 选择启动模式:
  60. echo ============================================
  61. echo 1. 开发模式(热重载,端口8081)
  62. echo 2. 生产模式(预览构建结果)
  63. echo 3. 仅构建(不启动服务器)
  64. echo.
  65. set /p mode="请输入选项 (1/2/3): "
  66. if "%mode%"=="1" (
  67. echo.
  68. echo 启动开发服务器...
  69. echo 访问地址: http://localhost:8081
  70. echo.
  71. call npm run serve
  72. ) else if "%mode%"=="2" (
  73. echo.
  74. echo 启动生产服务器...
  75. echo 访问地址: http://localhost:8081
  76. echo.
  77. call npx http-server dist -p 8081 -o
  78. ) else if "%mode%"=="3" (
  79. echo.
  80. echo ✅ 构建完成!
  81. echo 构建文件位于: dist目录
  82. echo.
  83. echo 您可以将dist目录部署到任何静态文件服务器
  84. pause
  85. ) else (
  86. echo ❌ 无效的选项
  87. pause
  88. exit /b 1
  89. )