| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- import { defineConfig } from 'vite';
- import vue from '@vitejs/plugin-vue';
- import { resolve } from 'path';
- import UnoCSS from 'unocss/vite';
- import AutoImport from 'unplugin-auto-import/vite';
- import Components from 'unplugin-vue-components/vite';
- import { ElementPlusResolver } from 'unplugin-vue-components/resolvers';
- import { ViteImageOptimizer } from 'vite-plugin-image-optimizer';
- // https://vite.dev/config/
- export default defineConfig({
- base: './',
- build: {
- outDir: 'dashboard',
- },
- plugins: [
- vue(),
- UnoCSS(),
- // 自动引入组件
- AutoImport({
- resolvers: [ElementPlusResolver()],
- }),
- Components({
- resolvers: [ElementPlusResolver()],
- }),
- ViteImageOptimizer({
- logStats: true,
- ansiColors: true,
- test: /\.(jpe?g|png|gif|tiff|webp|svg|avif)$/i,
- includePublic: true,
- svg: {
- multipass: true,
- plugins: [
- {
- name: 'preset-default',
- params: {
- overrides: {
- cleanupNumericValues: false,
- cleanupIds: {
- minify: false,
- remove: false,
- },
- convertPathData: false,
- },
- },
- },
- 'sortAttrs',
- {
- name: 'addAttributesToSVGElement',
- params: {
- attributes: [{ xmlns: 'http://www.w3.org/2000/svg' }],
- },
- },
- ],
- },
- png: {
- quality: 80,
- },
- jpeg: {
- quality: 80,
- },
- jpg: {
- quality: 80,
- },
- webp: {
- lossless: true,
- },
- }),
- ],
- resolve: {
- alias: {
- '@': resolve(__dirname, 'src'),
- },
- },
- server: {
- proxy: {
- '/api': {
- // target: 'http://172.18.50.86:8080',
- target: 'http://172.26.28.188:8080',
- // target: 'http://10.254.254.8:8080',
- // target: "https://app-mx-data-gxc-uat.azurewebsites.net",
- changeOrigin: true,
- rewrite: (path) => path.replace('/api', ''),
- },
- },
- },
- });
|