index.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /*
  2. * @Description:
  3. * @Author: zcf
  4. * @Date: 2022-02-08 17:24:53
  5. * @LastEditTime: 2022-07-18 14:52:23
  6. * @LastEditors: zcf
  7. */
  8. import vue from '@vitejs/plugin-vue'
  9. import createRestart from './restart'
  10. import createJsx from './jsx'
  11. import createHtml from './html'
  12. import createAutoImport from './auto-import'
  13. import createComponents from './components'
  14. import createSetupExtend from './setup-extend'
  15. import createSvgIcon from './svg-icon'
  16. import createIcons from './icons'
  17. import createMock from './mock'
  18. import createCompression from './compression'
  19. import createSpritesmith from './spritesmith'
  20. import createBanner from './banner'
  21. import createPwa from './pwa'
  22. import createLegacy from './legacy'
  23. import createUnocss from './unocss'
  24. // import createBasicSsl from './http'
  25. // import createRemoveConsole from './remove-console'
  26. export default function createVitePlugins(viteEnv, isBuild = false) {
  27. const vitePlugins = [vue()]
  28. !isBuild && vitePlugins.push(createRestart())
  29. vitePlugins.push(createJsx())
  30. vitePlugins.push(createHtml(viteEnv, isBuild))
  31. vitePlugins.push(createAutoImport())
  32. vitePlugins.push(createComponents())
  33. vitePlugins.push(createSetupExtend())
  34. vitePlugins.push(createSvgIcon(isBuild))
  35. vitePlugins.push(createIcons())
  36. vitePlugins.push(createMock())
  37. isBuild && vitePlugins.push(...createCompression(viteEnv))
  38. vitePlugins.push(...createSpritesmith(isBuild))
  39. vitePlugins.push(createBanner())
  40. viteEnv.VITE_BUILD_PWA && vitePlugins.push(createPwa())
  41. vitePlugins.push(createUnocss())
  42. isBuild && vitePlugins.push(createLegacy())
  43. // vitePlugins.push(createBasicSsl())
  44. // TODO 不好用,js不生效,ts中才生效
  45. // viteEnv.VITE_BUILD_DROP_CONSOLE && vitePlugins.push(createRemoveConsole())
  46. return vitePlugins
  47. }