vite.config.ts 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. import { defineConfig } from "vite";
  2. import vue from "@vitejs/plugin-vue";
  3. import { resolve } from "path";
  4. import Components from "unplugin-vue-components/vite";
  5. import { VantResolver } from "unplugin-vue-components/resolvers";
  6. import AutoImport from "unplugin-auto-import/vite";
  7. import VueSetupExtend from "vite-plugin-vue-setup-extend";
  8. import vueJsx from "@vitejs/plugin-vue-jsx";
  9. import { VueAmapResolver } from "@vuemap/unplugin-resolver";
  10. import userConfig from "./config";
  11. // https://vitejs.dev/config/
  12. export default defineConfig({
  13. server: {
  14. port: 3003,
  15. host: "0.0.0.0",
  16. hmr: true,
  17. },
  18. define: {
  19. "process.env":
  20. process.env.NODE_ENV === "production"
  21. ? userConfig.buildEnv
  22. : userConfig.devEnv,
  23. },
  24. css: {
  25. // preprocessorOptions: {
  26. // scss: {
  27. // additionalData: `@import "@/styles/variable.scss";`,
  28. // },
  29. // },
  30. },
  31. plugins: [
  32. vue(),
  33. vueJsx(),
  34. VueSetupExtend(),
  35. Components({
  36. resolvers: [VantResolver(), VueAmapResolver()],
  37. }),
  38. AutoImport({
  39. imports: ["vue", "vue-router", "vue-i18n"],
  40. dts: "src/auto-import.d.ts",
  41. resolvers: [VueAmapResolver()],
  42. }),
  43. ],
  44. resolve: {
  45. alias: {
  46. "@": resolve(__dirname, "src"),
  47. "@pages": resolve(__dirname, "src/pages"),
  48. "@components": resolve(__dirname, "src/components"),
  49. "@layout": resolve(__dirname, "src/layout"),
  50. "@api": resolve(__dirname, "src/api"),
  51. "@utils": resolve(__dirname, "src/utils"),
  52. "@store": resolve(__dirname, "src/store"),
  53. "@assets": resolve(__dirname, "src/assets"),
  54. "@i18n": resolve(__dirname, "src/i18n"),
  55. "@type": resolve(__dirname, "src/type"),
  56. },
  57. },
  58. });