vite.config.ts 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. import { defineConfig } from "vite";
  2. import Uni from "@dcloudio/vite-plugin-uni";
  3. import UniHelperManifest from "@uni-helper/vite-plugin-uni-manifest";
  4. import UniHelperPages from "@uni-helper/vite-plugin-uni-pages";
  5. import UniHelperLayouts from "@uni-helper/vite-plugin-uni-layouts";
  6. import UniHelperComponents from "@uni-helper/vite-plugin-uni-components";
  7. import AutoImport from "unplugin-auto-import/vite";
  8. import { WotResolver } from "@uni-helper/vite-plugin-uni-components/resolvers";
  9. // https://vitejs.dev/config/
  10. export default async () => {
  11. const UnoCSS = (await import("unocss/vite")).default;
  12. return defineConfig({
  13. plugins: [
  14. // https://github.com/uni-helper/vite-plugin-uni-manifest
  15. UniHelperManifest(),
  16. // https://github.com/uni-helper/vite-plugin-uni-pages
  17. UniHelperPages({
  18. dts: "src/uni-pages.d.ts",
  19. subPackages: ["src/subPack"],
  20. }),
  21. // https://github.com/uni-helper/vite-plugin-uni-layouts
  22. UniHelperLayouts(),
  23. // https://github.com/uni-helper/vite-plugin-uni-components
  24. UniHelperComponents({
  25. resolvers: [WotResolver()],
  26. dts: "src/components.d.ts",
  27. dirs: ["src/components", "src/business"],
  28. directoryAsNamespace: true,
  29. }),
  30. Uni(),
  31. // https://github.com/antfu/unplugin-auto-import
  32. AutoImport({
  33. imports: [
  34. "vue",
  35. "@vueuse/core",
  36. "pinia",
  37. "uni-app",
  38. {
  39. from: "uni-mini-router",
  40. imports: ["createRouter", "useRouter", "useRoute"],
  41. },
  42. {
  43. from: "wot-design-uni",
  44. imports: ["useToast", "useMessage", "useNotify", "CommonUtil"],
  45. },
  46. {
  47. from: "alova/client",
  48. imports: ["usePagination", "useRequest"],
  49. },
  50. ],
  51. dts: "src/auto-imports.d.ts",
  52. dirs: ["src/composables", "src/store", "src/utils", "src/api"],
  53. vueTemplate: true,
  54. }),
  55. // https://github.com/antfu/unocss
  56. // see unocss.config.ts for config
  57. UnoCSS(),
  58. ],
  59. });
  60. };