vite.config.components.ts 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. import AutoImport from 'unplugin-auto-import/vite'
  2. import Icons from 'unplugin-icons/vite'
  3. import { VantResolver } from 'unplugin-vue-components/resolvers'
  4. import Components from 'unplugin-vue-components/vite'
  5. export default () => ([
  6. /**
  7. * 按需自动导入API
  8. * @see https://github.com/antfu/unplugin-auto-import#readme
  9. */
  10. AutoImport({
  11. eslintrc: {
  12. enabled: true,
  13. },
  14. include: [
  15. /\.[tj]sx?$/, // .ts, .tsx, .js, .jsx
  16. /\.vue$/,
  17. /\.vue\?vue/, // .vue
  18. /\.md$/, // .md
  19. ],
  20. imports: [
  21. 'vue',
  22. 'vue-router',
  23. '@vueuse/core',
  24. {
  25. 'vant': ['closeToast', 'showConfirmDialog', 'showDialog', 'showFailToast', 'showLoadingToast', 'showSuccessToast', 'showToast', 'showImagePreview'],
  26. 'pinia': ['defineStore', 'storeToRefs'],
  27. 'vue-router': ['createRouter', 'createWebHashHistory'],
  28. '@unhead/vue': ['useHead'],
  29. '@lincy/utils': ['deepClone', 'deepMerge', 'UTC2Date'],
  30. },
  31. ],
  32. dts: 'src/auto-imports.d.ts',
  33. dirs: ['src/components', 'src/**/components', 'src/composables', 'src/stores'],
  34. resolvers: [VantResolver()],
  35. defaultExportByFilename: false,
  36. vueTemplate: true,
  37. }),
  38. /**
  39. * 按需自动导入Vue组件
  40. * @see https://github.com/antfu/unplugin-vue-components#readme
  41. */
  42. Components({
  43. dirs: ['src/components', 'src/**/components'],
  44. include: [
  45. /\.[tj]sx?$/, // .ts, .tsx, .js, .jsx
  46. /\.vue$/,
  47. /\.vue\?vue/, // .vue
  48. /\.md$/, // .md
  49. ],
  50. extensions: ['vue', 'tsx', 'jsx'],
  51. resolvers: [VantResolver()],
  52. dts: 'src/components.d.ts',
  53. }),
  54. /**
  55. * 按需访问数千个图标作为组件
  56. * @see https://github.com/antfu/unplugin-icons#readme
  57. * @example <i-mdi-account-box style="font-size: 2em; color: red"/>
  58. */
  59. Icons({
  60. autoInstall: true,
  61. }),
  62. ])