瀏覽代碼

feat: 开发模式调整法

zhangjie 1 月之前
父節點
當前提交
9e748e4b6a
共有 2 個文件被更改,包括 61 次插入66 次删除
  1. 2 2
      .env.development
  2. 59 64
      vite.config.ts

+ 2 - 2
.env.development

@@ -1,2 +1,2 @@
-VUE_APP_DEV_PROXY = "http://192.168.10.225";
-VUE_APP_DEV_BASE_URL = "/web/"
+VITE_APP_DEV_PROXY = "http://192.168.10.67:8000"
+VITE_APP_DEV_BASE_URL = "/web/"

+ 59 - 64
vite.config.ts

@@ -3,74 +3,69 @@ import vue from "@vitejs/plugin-vue";
 import ViteComponents from "unplugin-vue-components/vite";
 import { AntDesignVueResolver } from "unplugin-vue-components/resolvers";
 
-const env = loadEnv("development", process.cwd(), "");
-
 const path = require("path");
 
-function mockDevLogin(): Plugin {
-  return {
-    name: "mockDevLogin",
-    apply: "build",
-    load(id) {
-      if (id === normalizePath(path.resolve(__dirname, "src/devLogin.ts"))) {
-        return `export const initLogin = () => {}`;
-      }
-    },
-  };
-}
-
 // https://vitejs.dev/config/
-export default defineConfig({
-  base: env.NODE_ENV === "development" ? env.VUE_APP_DEV_BASE_URL : undefined,
-  // base: "/web/",
-  plugins: [
-    vue({
-      reactivityTransform: true,
-    }),
-    ViteComponents({
-      resolvers: [AntDesignVueResolver()],
-      dts: true,
-    }),
-    mockDevLogin(),
-  ],
-  server: {
-    port: 9000,
-    // strictPort: true,
-    fs: {
-      strict: true,
-      allow: ["./"],
-    },
-    proxy: {
-      "/login": {
-        target: env.VUE_APP_DEV_PROXY,
-        changeOrigin: true,
-      },
-      "/mark": {
-        target: env.VUE_APP_DEV_PROXY,
-        changeOrigin: true,
-      },
-      "/admin": {
-        target: env.VUE_APP_DEV_PROXY,
-        changeOrigin: true,
+export default defineConfig(({ command, mode }) => {
+  const env = loadEnv(mode, process.cwd(), "");
+  const isDev = command === "serve"; // 开发环境下 command 为 'serve',生产环境为 'build'
+
+  // console.log("当前环境:", {
+  //   command, // 'serve' 或 'build'
+  //   mode, // 'development' 或 'production'
+  //   isDev, // true 或 false
+  // });
+
+  return {
+    base: isDev ? env.VITE_APP_DEV_BASE_URL : undefined,
+    plugins: [
+      vue({
+        reactivityTransform: true,
+      }),
+      ViteComponents({
+        resolvers: [AntDesignVueResolver()],
+        dts: true,
+      }),
+    ],
+    server: {
+      port: 9000,
+      // strictPort: true,
+      fs: {
+        strict: true,
+        allow: ["./"],
       },
-      "/api": {
-        target: env.VUE_APP_DEV_PROXY,
-        // changeOrigin: true,
+      proxy: {
+        "/login": {
+          target: env.VITE_APP_DEV_PROXY,
+          changeOrigin: true,
+        },
+        "/mark": {
+          target: env.VITE_APP_DEV_PROXY,
+          changeOrigin: true,
+        },
+        "/admin": {
+          target: env.VITE_APP_DEV_PROXY,
+          changeOrigin: true,
+        },
+        "/api": {
+          target: env.VITE_APP_DEV_PROXY,
+          // changeOrigin: true,
+        },
       },
     },
-  },
-  resolve: {
-    alias: [{ find: "@", replacement: path.resolve(__dirname, "./src") }],
-    extensions: [".js", ".mjs", ".ts", ".vue", ".json", ".scss", ".css"],
-  },
-  build: {
-    ssr: false,
-    commonjsOptions: { include: [] },
-  },
-  optimizeDeps: {
-    disabled: false,
-  },
-  // define: {
-  //   __VUE_PROD_DEVTOOLS__: true, // no effect
-  // },
+    resolve: {
+      alias: [{ find: "@", replacement: path.resolve(__dirname, "./src") }],
+      extensions: [".js", ".mjs", ".ts", ".vue", ".json", ".scss", ".css"],
+    },
+    build: {
+      ssr: false,
+      commonjsOptions: { include: [] },
+    },
+    optimizeDeps: {
+      disabled: false,
+    },
+    // define: {
+    //   __VUE_PROD_DEVTOOLS__: true, // no effect
+    // },
+  };
 });