vite.config.ts 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. import { defineConfig } from "vite";
  2. import vue from "@vitejs/plugin-vue";
  3. import Components from "unplugin-vue-components/vite";
  4. import { NaiveUiResolver } from "unplugin-vue-components/resolvers";
  5. import AutoImport from "unplugin-auto-import/vite";
  6. import legacy from "@vitejs/plugin-legacy";
  7. import vueJsx from "@vitejs/plugin-vue-jsx";
  8. const SERVER_URL = "https://192.168.10.39";
  9. const path = require("path");
  10. // https://vitejs.dev/config/
  11. export default defineConfig({
  12. base: "/oe-web/",
  13. plugins: [
  14. vue({ reactivityTransform: true }),
  15. vueJsx({}),
  16. Components({
  17. resolvers: [NaiveUiResolver()],
  18. dts: "src/types/components.d.ts",
  19. }),
  20. AutoImport({
  21. // targets to transform
  22. include: [
  23. /\.[tj]sx?$/, // .ts, .tsx, .js, .jsx
  24. /\.vue$/,
  25. /\.vue\?vue/, // .vue
  26. ],
  27. resolvers: [(name) => name === "logger" && "@/utils/logger"],
  28. dts: "src/types/auto-imports.d.ts",
  29. // Generate corresponding .eslintrc-auto-import.json file.
  30. // eslint globals Docs - https://eslint.org/docs/user-guide/configuring/language-options#specifying-globals
  31. eslintrc: {
  32. enabled: true, // Default `false`
  33. filepath: "./.eslintrc-auto-import.json", // Default `./.eslintrc-auto-import.json`
  34. globalsPropValue: true, // Default `true`, (true | false | 'readonly' | 'readable' | 'writable' | 'writeable')
  35. },
  36. }),
  37. legacy({
  38. targets: ["chrome >= 58"],
  39. additionalLegacyPolyfills: ["regenerator-runtime/runtime"],
  40. }),
  41. ],
  42. server: {
  43. port: 3000,
  44. // strictPort: true,
  45. fs: {
  46. strict: true,
  47. allow: ["./"],
  48. },
  49. proxy: {
  50. "/api": {
  51. target: SERVER_URL,
  52. changeOrigin: true,
  53. secure: false,
  54. ws: true,
  55. },
  56. "/admin": {
  57. target: SERVER_URL,
  58. changeOrigin: true,
  59. secure: false,
  60. },
  61. },
  62. },
  63. resolve: {
  64. alias: [{ find: "@", replacement: path.resolve(__dirname, "./src") }],
  65. extensions: [
  66. ".js",
  67. ".mjs",
  68. ".ts",
  69. ".tsx",
  70. ".vue",
  71. ".json",
  72. ".scss",
  73. ".css",
  74. ],
  75. },
  76. build: {
  77. ssr: false,
  78. // FIXME: 为初期测试开启的调试
  79. sourcemap: true,
  80. },
  81. // define: {
  82. // __VUE_PROD_DEVTOOLS__: true, // no effect
  83. // },
  84. });