vite.config.ts 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  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. plugins: [
  13. vue({ reactivityTransform: true }),
  14. vueJsx({}),
  15. Components({
  16. resolvers: [NaiveUiResolver()],
  17. dts: "src/types/components.d.ts",
  18. }),
  19. AutoImport({
  20. // targets to transform
  21. include: [
  22. /\.[tj]sx?$/, // .ts, .tsx, .js, .jsx
  23. /\.vue$/,
  24. /\.vue\?vue/, // .vue
  25. ],
  26. resolvers: [(name) => name === "logger" && "@/utils/logger"],
  27. dts: "src/types/auto-imports.d.ts",
  28. // Generate corresponding .eslintrc-auto-import.json file.
  29. // eslint globals Docs - https://eslint.org/docs/user-guide/configuring/language-options#specifying-globals
  30. eslintrc: {
  31. enabled: true, // Default `false`
  32. filepath: "./.eslintrc-auto-import.json", // Default `./.eslintrc-auto-import.json`
  33. globalsPropValue: true, // Default `true`, (true | false | 'readonly' | 'readable' | 'writable' | 'writeable')
  34. },
  35. }),
  36. legacy({
  37. targets: ["chrome >= 58"],
  38. additionalLegacyPolyfills: ["regenerator-runtime/runtime"],
  39. }),
  40. ],
  41. server: {
  42. port: 3000,
  43. // strictPort: true,
  44. fs: {
  45. strict: true,
  46. allow: ["./"],
  47. },
  48. proxy: {
  49. "/api": {
  50. target: SERVER_URL,
  51. changeOrigin: true,
  52. secure: false,
  53. ws: true,
  54. },
  55. "/admin": {
  56. target: SERVER_URL,
  57. changeOrigin: true,
  58. secure: false,
  59. },
  60. },
  61. },
  62. resolve: {
  63. alias: [{ find: "@", replacement: path.resolve(__dirname, "./src") }],
  64. extensions: [
  65. ".js",
  66. ".mjs",
  67. ".ts",
  68. ".tsx",
  69. ".vue",
  70. ".json",
  71. ".scss",
  72. ".css",
  73. ],
  74. },
  75. build: {
  76. ssr: false,
  77. },
  78. // define: {
  79. // __VUE_PROD_DEVTOOLS__: true, // no effect
  80. // },
  81. });