vite.config.build.ts 1.3 KB

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