vite.config.base.ts 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import { resolve } from 'path';
  2. import { defineConfig } from 'vite';
  3. import vue from '@vitejs/plugin-vue';
  4. import svgLoader from 'vite-svg-loader';
  5. import inject from '@rollup/plugin-inject';
  6. import configArcoStyleImportPlugin from './plugin/arcoStyleImport';
  7. export default defineConfig({
  8. plugins: [
  9. vue(),
  10. svgLoader({ svgoConfig: {} }),
  11. configArcoStyleImportPlugin(),
  12. inject({
  13. 'window.Quill': ['@vueup/vue-quill', 'Quill'],
  14. 'Quill': ['@vueup/vue-quill', 'Quill'],
  15. }),
  16. ],
  17. resolve: {
  18. alias: [
  19. {
  20. find: '@',
  21. replacement: resolve(__dirname, '../src'),
  22. },
  23. {
  24. find: 'assets',
  25. replacement: resolve(__dirname, '../src/assets'),
  26. },
  27. {
  28. find: 'vue',
  29. replacement: 'vue/dist/vue.esm-bundler.js', // compile template
  30. },
  31. ],
  32. extensions: ['.ts', '.js'],
  33. },
  34. define: {
  35. 'process.env': {},
  36. '__VUE_PROD_HYDRATION_MISMATCH_DETAILS__': false,
  37. },
  38. css: {
  39. preprocessorOptions: {
  40. less: {
  41. modifyVars: {
  42. hack: `true; @import (reference) "${resolve(
  43. 'src/assets/style/var.less'
  44. )}";`,
  45. },
  46. javascriptEnabled: true,
  47. },
  48. },
  49. },
  50. });