vite.config.base.ts 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. import { resolve } from 'path';
  2. import { defineConfig } from 'vite';
  3. // import { viteMockServe } from 'vite-plugin-mock';
  4. import vue from '@vitejs/plugin-vue';
  5. import vueJsx from '@vitejs/plugin-vue-jsx';
  6. import svgLoader from 'vite-svg-loader';
  7. import basicSsl from '@vitejs/plugin-basic-ssl';
  8. import configArcoStyleImportPlugin from './plugin/arcoStyleImport';
  9. export default defineConfig({
  10. base: '/foreground/',
  11. plugins: [
  12. vue(),
  13. vueJsx(),
  14. svgLoader({ svgoConfig: {} }),
  15. configArcoStyleImportPlugin(),
  16. basicSsl(),
  17. // viteMockServe({
  18. // mockPath: 'src/mock/index.ts',
  19. // localEnabled: true,
  20. // prodEnabled: true,
  21. // watchFiles: true,
  22. // injectCode: `
  23. // import { setupProdMockServer } from './mockProdServer';
  24. // setupProdMockServer();
  25. // `,
  26. // logger: true,
  27. // }),
  28. ],
  29. resolve: {
  30. alias: [
  31. {
  32. find: '@',
  33. replacement: resolve(__dirname, '../src'),
  34. },
  35. {
  36. find: 'assets',
  37. replacement: resolve(__dirname, '../src/assets'),
  38. },
  39. {
  40. find: 'vue-i18n',
  41. replacement: 'vue-i18n/dist/vue-i18n.cjs.js', // Resolve the i18n warning issue
  42. },
  43. {
  44. find: 'vue',
  45. replacement: 'vue/dist/vue.esm-bundler.js', // compile template
  46. },
  47. ],
  48. extensions: ['.ts', '.js'],
  49. },
  50. define: {
  51. 'process.env': {},
  52. },
  53. css: {
  54. preprocessorOptions: {
  55. less: {
  56. modifyVars: {},
  57. javascriptEnabled: true,
  58. },
  59. scss: {
  60. api: 'modern-compiler',
  61. silenceDeprecations: ['legacy-js-api'],
  62. additionalData: '@import "@/assets/style/breakpoint.scss";',
  63. },
  64. },
  65. },
  66. });