vite.config.js 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. /** @format */
  2. import { defineConfig, loadEnv } from "vite";
  3. import path from "path";
  4. import createVitePlugins from "./vite/plugins";
  5. // https://vitejs.dev/config/
  6. export default defineConfig(({ mode, command }) => {
  7. const env = loadEnv(mode, process.cwd());
  8. const { VITE_APP_ENV } = env;
  9. return {
  10. // 部署生产环境和开发环境下的URL。
  11. // 默认情况下,vite 会假设你的应用是被部署在一个域名的根路径上
  12. // 例如 https://www.ruoyi.vip/。如果应用被部署在一个子路径上,你就需要用这个选项指定这个子路径。例如,如果你的应用被部署在 https://www.ruoyi.vip/admin/,则设置 baseUrl 为 /admin/。
  13. base: VITE_APP_ENV === "production" ? "/" : "/",
  14. plugins: createVitePlugins(env, command === "build"),
  15. resolve: {
  16. // https://cn.vitejs.dev/config/#resolve-alias
  17. alias: {
  18. // 设置路径
  19. "~": path.resolve(__dirname, "./"),
  20. // 设置别名
  21. "@": path.resolve(__dirname, "./src"),
  22. },
  23. // https://cn.vitejs.dev/config/#resolve-extensions
  24. extensions: [".mjs", ".js", ".ts", ".jsx", ".tsx", ".json", ".vue"],
  25. },
  26. // vite 相关配置
  27. server: {
  28. port: 80,
  29. host: true,
  30. open: true,
  31. proxy: {
  32. // https://cn.vitejs.dev/config/#server-proxy
  33. "/dev-api": {
  34. target: "http://192.168.1.100:8080",
  35. changeOrigin: true,
  36. rewrite: (p) => p.replace(/^\/dev-api/, ""),
  37. },
  38. },
  39. },
  40. //fix:error:stdin>:7356:1: warning: "@charset" must be the first rule in the file
  41. css: {
  42. postcss: {
  43. plugins: [
  44. {
  45. postcssPlugin: "internal:charset-removal",
  46. AtRule: {
  47. charset: (atRule) => {
  48. if (atRule.name === "charset") {
  49. atRule.remove();
  50. }
  51. },
  52. },
  53. },
  54. ],
  55. },
  56. },
  57. };
  58. });