前后台一起部署,vite配置笔记base\build

场景:

当静态文件放置在后台的子包里,有很多个子包,不同子包的static里用自己单独的,前台打包默认的根路径就不行,所以需要配置base

javascript 复制代码
base: '/robotUrl/',

配置完后,打包后,启动地址和打包后的html会变成robotUrl


assetsDir

修改打包后放文件的文件名:assetsDir

javascript 复制代码
assetsDir: 'robotAssets',

设置后dist里的文件名改变

input :指定入口文件

vite默认是index.html,当多应用有多个入口文件时,可以配置不同的html,这些html文件要在代码里

robot、main、admin是入口的名字,影响打包成的模块名字

eg:

javascript 复制代码
      input: {
        main: resolve(__dirname, 'index.html'),
        robot: resolve(__ dirname, 'robot.html'),
        admin: resolve(__dirname, 'admin.html')
      }

在打包文件会看到

设置完整,打包后如下图,modles是放在public底下的数据文件

vite.config.js文件的整体简易设置

javascript 复制代码
/*
整体结构
*/
import { fileURLToPath, URL } from 'node:url'

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import vueDevTools from 'vite-plugin-vue-devtools'
import { resolve } from 'node:path'
const __dirname = fileURLToPath(new URL('.', import.meta.url))
// https://vite.dev/config/
export default defineConfig({
  base: '/robotUrl/',
  plugins: [vue(), vueDevTools()],
  resolve: {
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url)),
    },
  },
  // vite 相关配置
  server: {
    port: 3333,
    host: true,
    open: false,
    proxy: {
      '/api': {
        target: 'http://xxxx.xx.xxx.xxxx:xxxx',
        changeOrigin: true,
        // rewrite: (p) => p.replace(/^\/api/, '/'),
      },
    },
  },
  build: {
    assetsDir: 'robotAssets',
    rollupOptions: {
      input: {
        robot: resolve(__dirname, 'robot.html'),
      },
    },
  },
})
相关推荐
妖精的羽翼11 分钟前
前端(Vue)→ 全栈 + AI 应用开发
前端
Fᴏʀ ʏ꯭ᴏ꯭ᴜ꯭.17 分钟前
Redis主从复制配置全攻略
数据库·redis·笔记
码路飞30 分钟前
玩了一圈 AI 编程工具,Background Agent 才是让我真正震撼的东西
前端·javascript
UCloud_TShare32 分钟前
优刻得发布云搜索服务CSS:面向AI时代的企业级搜索基础设施
前端·css·人工智能
林恒smileZAZ39 分钟前
Three.js实现更真实的3D地球[特殊字符]动态昼夜交替
开发语言·javascript·3d
月月大王的3D日记41 分钟前
别再复制粘贴了,从零拆解 3D 场景的诞生过程
javascript
木斯佳1 小时前
前端八股文面经大全:字节暑期前端一面(2026-04-21)·面经深度解析
前端·面试·校招·面经·实习
昭昭日月明1 小时前
前端仔速通 Python
javascript·python
SailingCoder1 小时前
Electron 安全IPC核心:contextBridge 安全机制
javascript·安全·electron
Jolyne_1 小时前
前端从0开始的LangChain学习(一)
前端·langchain