| | |
| | | import { defineConfig, loadEnv } from "vite";
|
| | | import path from "path";
|
| | | import createVitePlugins from "./vite/plugins";
|
| | |
|
| | | // https://vitejs.dev/config/
|
| | | export default defineConfig(({ mode, command }) => {
|
| | | const env = loadEnv(mode, process.cwd());
|
| | | const { VITE_APP_ENV } = env;
|
| | | const baseUrl =
|
| | | VITE_APP_ENV == "development"
|
| | | ? "http://114.132.189.42:8089" // 开发环境后端接口
|
| | | : "http://114.132.189.42:9032"; // 生产环境后端接口
|
| | |
|
| | | return {
|
| | | // 部署生产环境和开发环境下的URL。
|
| | | // 默认情况下,vite 会假设你的应用是被部署在一个域名的根路径上
|
| | | // 例如 https://www.ruoyi.vip/。如果应用被部署在一个子路径上,你就需要用这个选项指定这个子路径。例如,如果你的应用被部署在 https://www.ruoyi.vip/admin/,则设置 baseUrl 为 /admin/。
|
| | | base: VITE_APP_ENV === "production" ? "/" : "/",
|
| | | plugins: createVitePlugins(env, command === "build"),
|
| | | resolve: {
|
| | | // https://cn.vitejs.dev/config/#resolve-alias
|
| | | alias: {
|
| | | // 设置路径
|
| | | "~": path.resolve(__dirname, "./"),
|
| | | // 设置别名
|
| | | "@": path.resolve(__dirname, "./src"),
|
| | | },
|
| | | // https://cn.vitejs.dev/config/#resolve-extensions
|
| | | extensions: [".mjs", ".js", ".ts", ".jsx", ".tsx", ".json", ".vue"],
|
| | | },
|
| | | // 打包配置
|
| | | build: {
|
| | | // https://vite.dev/config/build-options.html
|
| | | sourcemap: command === "build" ? false : "inline",
|
| | | outDir: "dist",
|
| | | assetsDir: "assets",
|
| | | chunkSizeWarningLimit: 2000,
|
| | | rollupOptions: {
|
| | | output: {
|
| | | chunkFileNames: "static/js/[name]-[hash].js",
|
| | | entryFileNames: "static/js/[name]-[hash].js",
|
| | | assetFileNames: "static/[ext]/[name]-[hash].[ext]",
|
| | | },
|
| | | },
|
| | | },
|
| | | // vite 相关配置
|
| | | server: {
|
| | | port: 8001,
|
| | | host: true,
|
| | | open: true,
|
| | | proxy: {
|
| | | // https://cn.vitejs.dev/config/#server-proxy
|
| | | "/dev-api": {
|
| | | target: baseUrl,
|
| | | changeOrigin: true,
|
| | | rewrite: (p) => p.replace(/^\/dev-api/, ""),
|
| | | },
|
| | | // springdoc proxy
|
| | | "^/v3/api-docs/(.*)": {
|
| | | target: baseUrl,
|
| | | changeOrigin: true,
|
| | | },
|
| | | },
|
| | | },
|
| | | css: {
|
| | | postcss: {
|
| | | plugins: [
|
| | | {
|
| | | postcssPlugin: "internal:charset-removal",
|
| | | AtRule: {
|
| | | charset: (atRule) => {
|
| | | if (atRule.name === "charset") {
|
| | | atRule.remove();
|
| | | }
|
| | | },
|
| | | },
|
| | | },
|
| | | ],
|
| | | },
|
| | | },
|
| | | };
|
| | | });
|
| | | import { defineConfig } from 'vite' |
| | | import uni from '@dcloudio/vite-plugin-uni' |
| | | // https://vitejs.dev/config/ |
| | | export default defineConfig({ |
| | | plugins: [ |
| | | uni(), |
| | | ], |
| | | // 仅影响开发服务器(dev:h5),不影响 npm run build 产物。 |
| | | // 学生端 baseUrl 固定为 /prod-api(对应 nginx 反代),本地开发没有 nginx, |
| | | // 故在此把 /prod-api 转发到本机后端并去掉前缀。 |
| | | server: { |
| | | proxy: { |
| | | '/prod-api': { |
| | | target: 'http://localhost:18080', |
| | | changeOrigin: true, |
| | | rewrite: (path) => path.replace(/^\/prod-api/, ''), |
| | | }, |
| | | }, |
| | | }, |
| | | }) |