From db42d08c39ae6129e2b95cd24c0d57c6769282e5 Mon Sep 17 00:00:00 2001
From: huangyinfeng <1244041895@qq.com>
Date: 星期日, 29 九月 2024 15:32:51 +0800
Subject: [PATCH] 邮件右键菜单

---
 vite.config.ts |  141 +++++++++++++----------------------------------
 1 files changed, 39 insertions(+), 102 deletions(-)

diff --git a/vite.config.ts b/vite.config.ts
index 6f0c0b3..8ba3d87 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -1,110 +1,47 @@
-import type { UserConfig, ConfigEnv } from 'vite';
+import { defineApplicationConfig } from '@vben/vite-config';
 
-import { loadEnv } from 'vite';
-import { resolve } from 'path';
-
-import { generateModifyVars } from './build/generate/generateModifyVars';
-import { createProxy } from './build/vite/proxy';
-import { wrapperEnv } from './build/utils';
-import { createVitePlugins } from './build/vite/plugin';
-import { OUTPUT_DIR } from './build/constant';
-
-import pkg from './package.json';
-import moment from 'moment';
-
-function pathResolve(dir: string) {
-  return resolve(process.cwd(), '.', dir);
-}
-
-const { dependencies, devDependencies, name, version } = pkg;
-const __APP_INFO__ = {
-  pkg: { dependencies, devDependencies, name, version },
-  lastBuildTime: moment().format('YYYY-MM-DD HH:mm:ss'),
-};
-
-export default ({ command, mode }: ConfigEnv): UserConfig => {
-  const root = process.cwd();
-
-  const env = loadEnv(mode, root);
-
-  // The boolean type read by loadEnv is a string. This function can be converted to boolean type
-  const viteEnv = wrapperEnv(env);
-
-  const { VITE_PORT, VITE_PUBLIC_PATH, VITE_PROXY, VITE_DROP_CONSOLE } = viteEnv;
-
-  const isBuild = command === 'build';
-
-  return {
-    base: VITE_PUBLIC_PATH,
-    root,
-    resolve: {
-      alias: [
-        {
-          find: 'vue-i18n',
-          replacement: 'vue-i18n/dist/vue-i18n.cjs.js',
-        },
-        // /@/xxxx => src/xxxx
-        {
-          find: /\/@\//,
-          replacement: pathResolve('src') + '/',
-        },
-        // /#/xxxx => types/xxxx
-        {
-          find: /\/#\//,
-          replacement: pathResolve('types') + '/',
-        },
-        // ['@vue/compiler-sfc', '@vue/compiler-sfc/dist/compiler-sfc.esm-browser.js'],
+export default defineApplicationConfig({
+  overrides: {
+    optimizeDeps: {
+      include: [
+        'echarts/core',
+        'echarts/charts',
+        'echarts/components',
+        'echarts/renderers',
+        'qrcode',
+        '@iconify/iconify',
+        'ant-design-vue/es/locale/zh_CN',
+        'ant-design-vue/es/locale/en_US',
       ],
     },
     server: {
-      // Listening on all local IPs
-      host: true,
-      port: VITE_PORT,
-      // Load proxy configuration from .env
-      proxy: createProxy(VITE_PROXY),
-    },
-    build: {
-      target: 'es2015',
-      outDir: OUTPUT_DIR,
-      terserOptions: {
-        compress: {
-          keep_infinity: true,
-          // Used to delete console in production environment
-          drop_console: VITE_DROP_CONSOLE,
+      
+      proxy: {
+        '/basic-api': {
+          target: 'http://yingchen.onbus.cn:9010',
+          changeOrigin: true,
+          ws: true,
+          rewrite: (path) => path.replace(new RegExp(`^/basic-api`), ''),
+          bypass(req, res, options: any) {
+            const proxyURL = options.target + options.rewrite(req.url);
+            console.log("瀹㈡埛绔姹傜殑鐪熸鍦板潃锛�", proxyURL);
+            res.setHeader("REAL-URL", proxyURL); // 璁剧疆鍝嶅簲澶村湪娴忚鍣ㄤ腑鍙
+          }
+          // only https
+          // secure: false
         },
-      },
-      // Turning off brotliSize display can slightly reduce packaging time
-      brotliSize: false,
-      chunkSizeWarningLimit: 2000,
-    },
-    define: {
-      // setting vue-i18-next
-      // Suppress warning
-      __INTLIFY_PROD_DEVTOOLS__: false,
-      __APP_INFO__: JSON.stringify(__APP_INFO__),
-    },
-    css: {
-      preprocessorOptions: {
-        less: {
-          modifyVars: generateModifyVars(),
-          javascriptEnabled: true,
+        '/upload': {
+          target: 'http://yingchen.onbus.cn:9010/attachment/uploadAttachmentV2.do',
+          changeOrigin: true,
+          ws: true,
+          rewrite: (path) => path.replace(new RegExp(`^/upload`), ''),
         },
+
       },
+      open: true, // 椤圭洰鍚姩鍚庯紝鑷姩鎵撳紑
+      warmup: {
+        clientFiles: ['./index.html', './src/{views,components}/*'],
+      }
     },
-
-    // The vite plugin used by the project. The quantity is large, so it is separately extracted and managed
-    plugins: createVitePlugins(viteEnv, isBuild),
-
-    optimizeDeps: {
-      // @iconify/iconify: The dependency is dynamically and virtually loaded by @purge-icons/generated, so it needs to be specified explicitly
-      include: [
-        '@iconify/iconify',
-        'ant-design-vue/es/locale/zh_CN',
-        'moment/dist/locale/zh-cn',
-        'ant-design-vue/es/locale/en_US',
-        'moment/dist/locale/eu',
-      ],
-      exclude: ['vue-demi'],
-    },
-  };
-};
+  },
+});

--
Gitblit v1.8.0