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域名
相关推荐
前端摸鱼匠1 天前
Vue 3 的defineProps编译器宏:详解<script setup>中defineProps的使用
前端·javascript·vue.js·前端框架·ecmascript
天外天-亮1 天前
Vue2.0 + jsmind:开发思维导图
javascript·vue.js·jsmind
斯坦SteinY1 天前
github年度热门开源项目
ai·chatgpt·开源·github·排名·热门项目
挖稀泥的工人1 天前
能够插入 DOM 的输入框
前端·javascript·vue.js
没有故事、有酒1 天前
Vue2中el-table修改表头高度和行高
javascript·vue.js·elementui
把csdn当日记本的菜鸡1 天前
Vue3 响应式 API 简单学习
javascript·vue.js·学习
小李子呢02111 天前
前端八股5---组件通信
前端·javascript·vue.js
kyriewen111 天前
每日知识点:this 指向之谜——是谁在 call 我?
前端·javascript·vue.js·前端框架·ecmascript·jquery·html5
前端那点事1 天前
Vue3 代码编写规范 | 避坑指南+团队协作标准
vue.js
Ruihong1 天前
Vue 迁移 React 实战:VuReact 一键自动化转换方案
前端·vue.js