vite.config.ts 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  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. const SERVER_URL = "https://192.168.10.39";
  8. const path = require("path");
  9. // https://vitejs.dev/config/
  10. export default defineConfig({
  11. plugins: [
  12. vue({
  13. reactivityTransform: true,
  14. }),
  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. },
  54. "/admin": {
  55. target: SERVER_URL,
  56. changeOrigin: true,
  57. secure: false,
  58. },
  59. },
  60. },
  61. resolve: {
  62. alias: [{ find: "@", replacement: path.resolve(__dirname, "./src") }],
  63. extensions: [".js", ".mjs", ".ts", ".vue", ".json", ".scss", ".css"],
  64. },
  65. build: {
  66. ssr: false,
  67. },
  68. // define: {
  69. // __VUE_PROD_DEVTOOLS__: true, // no effect
  70. // },
  71. });