vite.config.build.ts 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. import { defineConfig } from 'vite';
  2. import vue from '@vitejs/plugin-vue';
  3. import path from 'path';
  4. import autoprefixer from 'autoprefixer';
  5. export default defineConfig({
  6. resolve: {
  7. alias: [{ find: '@', replacement: path.resolve(__dirname, './src') }]
  8. },
  9. css: {
  10. preprocessorOptions: {
  11. scss: {
  12. // example : additionalData: `@import "./src/design/styles/variables";`
  13. // dont need include file extend .scss
  14. additionalData: `@import "@/packages/styles/variables.scss";`
  15. }
  16. },
  17. postcss: {
  18. plugins: [
  19. autoprefixer({
  20. overrideBrowserslist: ['> 0.5%', 'last 2 versions', 'ie > 11', 'iOS >= 10', 'Android >= 5']
  21. })
  22. ]
  23. }
  24. },
  25. plugins: [vue()],
  26. build: {
  27. minify: true,
  28. rollupOptions: {
  29. // 请确保外部化那些你的库中不需要的依赖
  30. external: ['vue', 'vue-router'],
  31. output: {
  32. // 在 UMD 构建模式下为这些外部化的依赖提供一个全局变量
  33. globals: {
  34. vue: 'Vue'
  35. },
  36. exports: 'named',
  37. plugins: [],
  38. entryFileNames: `nutui.umd.js`
  39. }
  40. },
  41. lib: {
  42. entry: 'src/packages/nutui.vue.build.ts',
  43. name: 'nutui',
  44. fileName: 'nutui',
  45. formats: ['umd']
  46. }
  47. }
  48. });