vite.config.js 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. // Vite中文网:https://vitejs.cn/config/
  2. import {resolve} from 'path';
  3. import uni from '@dcloudio/vite-plugin-uni';
  4. const envs = require('./config/env');
  5. export default ({mode}) => {
  6. let IS_TEST = true
  7. let json = process.env.UNI_CUSTOM_CONTEXT
  8. if (json) {
  9. const context = JSON.parse(json)
  10. IS_TEST = context.IS_TEST
  11. }
  12. // 默认测试服
  13. let config = envs.test
  14. if (!IS_TEST) {
  15. config = envs.prod
  16. }
  17. // 默认正式服
  18. // let config = envs.prod
  19. // if (!IS_TEST) {
  20. // config = envs.test
  21. // }
  22. return {
  23. base: './',
  24. // 设置路径别名
  25. resolve: {
  26. alias: {
  27. '@': resolve(''),
  28. },
  29. extensions: ['.js', '.json', '.ts', '.vue'], // 使用路径别名时想要省略的后缀名,可以自己 增减
  30. },
  31. // 自定义全局变量
  32. define: {
  33. 'process.env': config,
  34. },
  35. // 开发服务器配置
  36. server: {
  37. host: true,
  38. // open: true,
  39. // port: env.VITE_PORT,
  40. proxy: {},
  41. },
  42. // 构建配置
  43. // build: {
  44. // outDir: 'dist',
  45. // chunkSizeWarningLimit: 1500,
  46. // rollupOptions: {
  47. // output: {
  48. // entryFileNames: `assets/[name].${new Date().getTime()}.js`,
  49. // chunkFileNames: `assets/[name].${new Date().getTime()}.js`,
  50. // assetFileNames: `assets/[name].${new Date().getTime()}.[ext]`,
  51. // compact: true,
  52. // // manualChunks: {
  53. // // vue: ['vue', 'vue-router', 'vuex'],
  54. // // echarts: ['echarts'],
  55. // // },
  56. // },
  57. // },
  58. // },
  59. // 插件
  60. plugins: [
  61. uni(),
  62. ],
  63. };
  64. };