10分钟搞定Vite项目部署:从开发到上线(GitHub Pages+Vercel)全流程

  • 当你用Vite构建的Vue3项目在本地飞速运行,但部署到GitHub Pages或Vercel上却白屏... 问题根源是什么?"
  • 本文将详解Vite项目的多平台部署配置差异,提供'一次配置,双平台兼容'的解决方案。
  1. 前置准备

    • 环境要求
      • Vite 4+ / Vue 3.x
  2. 核心部署步骤

    1. 对比双平台的base差异(GitHub Pages需子路径,Vercel需根路径),动态配置静态资源路径

      • 关键配置

        • 修改vite.config.js
        javascript 复制代码
        import { defineConfig } from 'vite'
        import vue from '@vitejs/plugin-vue'
        
        const isGitHubPages = process.env.DEPLOY_TARGET === 'github-pages'
        const base = isGitHubPages ? '/vue-todo-list/' : '/'
        
        export default defineConfig({
          plugins: [vue()],
          base
        })
    2. GitHub Pages 适配

      • 自动化部署 (使用gh-pages一键推送):

        • 安装gh-pages
        bash 复制代码
        npm install gh-pages --save-dev
        • 在package.json中添加deploy命令
        json 复制代码
        // package.json
        {
            // ...,
            "scripts": {
                "dev": "vite",
                "build": "vite build",
                "preview": "vite preview",
                "deploy": "DEPLOY_TARGET=github-pages npm run build && gh-pages -d dist"
            },
            // ...
        }
        • 运行:npm run deploy
    3. Vercel 适配

      • 部署流程 (通过Vercel CLI关联Git仓库自动部署)
        1. 登录 Vercel (vercel.com)
        2. 点击 "New Project"
        3. 选择你的 GitHub 仓库
        4. 配置设置:
          • Framework Preset: Vite
          • Build Command: npm run build
          • Output Directory: dist
        5. 点击 Deploy
  3. 效果验证

    • GitHub Pages
      • 访问 https://username.github.io/repo-name
      • 检查资源加载(Chrome开发者工具 > Network)
    • Vercel
      • 访问自动生成的vercel.app域名
相关推荐
楚轩努力变强29 分钟前
前端工程化常见问题总结
开发语言·前端·javascript·vue.js·visual studio code
前端开发爱好者1 小时前
只有 7 KB!前端圈疯传的 Vue3 转场动效神库!效果炸裂!
前端·javascript·vue.js
qianmoQ1 小时前
GitHub 趋势日报 (2025年07月25日)
github
接口写好了吗2 小时前
【el-table滚动事件】el-table表格滚动时,获取可视窗口内的行数据
javascript·vue.js·elementui·可视窗口滚动
患得患失9493 小时前
【GitHub Workflows 基础(一)】认识 .github/workflows/ 下的多个工作流
github
木人舟3 小时前
github copilot接入openai-compatible模型以及去除安全限制的方法
github·copilot
五岁小孩5 小时前
一次性解决Github Enable two-factor authentication
github·2fa
洛千陨5 小时前
Web Worker基础概念 & 图片滤镜处理实际应用 -- Vue3
javascript·vue.js
半花5 小时前
【vue】v-自定义指令
前端·vue.js
武昌库里写JAVA5 小时前
【MySQL】MySQL数据库如何改名
java·vue.js·spring boot·sql·学习