|
|
@@ -1,45 +1,95 @@
|
|
|
import { fileURLToPath, URL } from "node:url";
|
|
|
|
|
|
-import { defineConfig } from "vite";
|
|
|
import vue from "@vitejs/plugin-vue";
|
|
|
import vueDevTools from "vite-plugin-vue-devtools";
|
|
|
import tailwindcss from "@tailwindcss/vite";
|
|
|
+import type { ConfigEnv, UserConfig } from "vite";
|
|
|
+import { loadEnv } from "vite";
|
|
|
|
|
|
import AutoImport from "unplugin-auto-import/vite";
|
|
|
import Components from "unplugin-vue-components/vite";
|
|
|
import { ElementPlusResolver } from "unplugin-vue-components/resolvers";
|
|
|
import MotionResolver from "motion-v/resolver";
|
|
|
|
|
|
-export default defineConfig({
|
|
|
- server: {
|
|
|
- host: "0.0.0.0", // 监听所有网络接口
|
|
|
- port: 5173, // 可选:指定端口
|
|
|
- },
|
|
|
- base: "./",
|
|
|
- plugins: [
|
|
|
- vue(),
|
|
|
- vueDevTools(),
|
|
|
- tailwindcss(),
|
|
|
- AutoImport({
|
|
|
- resolvers: [ElementPlusResolver()],
|
|
|
- }),
|
|
|
- Components({
|
|
|
- dts: true,
|
|
|
- resolvers: [ElementPlusResolver(), MotionResolver()],
|
|
|
- }),
|
|
|
- ],
|
|
|
- resolve: {
|
|
|
- alias: {
|
|
|
- "@": fileURLToPath(new URL("./src", import.meta.url)),
|
|
|
- "@components": fileURLToPath(
|
|
|
- new URL("./src/components", import.meta.url)
|
|
|
- ),
|
|
|
- "@assets": fileURLToPath(new URL("./src/assets", import.meta.url)),
|
|
|
- "@api": fileURLToPath(new URL("./src/api", import.meta.url)),
|
|
|
- "@utils": fileURLToPath(new URL("./src/utils", import.meta.url)),
|
|
|
- "@types": fileURLToPath(new URL("./src/types", import.meta.url)),
|
|
|
- "@stores": fileURLToPath(new URL("./src/stores", import.meta.url)),
|
|
|
- "@hooks": fileURLToPath(new URL("./src/hooks", import.meta.url)),
|
|
|
+const root = process.cwd();
|
|
|
+
|
|
|
+// export default defineConfig({
|
|
|
+// server: {
|
|
|
+// host: "0.0.0.0", // 监听所有网络接口
|
|
|
+// port: 5173, // 可选:指定端口
|
|
|
+// },
|
|
|
+// base: "./",
|
|
|
+// plugins: [
|
|
|
+// vue(),
|
|
|
+// vueDevTools(),
|
|
|
+// tailwindcss(),
|
|
|
+// AutoImport({
|
|
|
+// resolvers: [ElementPlusResolver()],
|
|
|
+// }),
|
|
|
+// Components({
|
|
|
+// dts: true,
|
|
|
+// resolvers: [ElementPlusResolver(), MotionResolver()],
|
|
|
+// }),
|
|
|
+// ],
|
|
|
+// resolve: {
|
|
|
+// alias: {
|
|
|
+// "@": fileURLToPath(new URL("./src", import.meta.url)),
|
|
|
+// "@components": fileURLToPath(
|
|
|
+// new URL("./src/components", import.meta.url)
|
|
|
+// ),
|
|
|
+// "@assets": fileURLToPath(new URL("./src/assets", import.meta.url)),
|
|
|
+// "@api": fileURLToPath(new URL("./src/api", import.meta.url)),
|
|
|
+// "@utils": fileURLToPath(new URL("./src/utils", import.meta.url)),
|
|
|
+// "@types": fileURLToPath(new URL("./src/types", import.meta.url)),
|
|
|
+// "@stores": fileURLToPath(new URL("./src/stores", import.meta.url)),
|
|
|
+// "@hooks": fileURLToPath(new URL("./src/hooks", import.meta.url)),
|
|
|
+// },
|
|
|
+// },
|
|
|
+// });
|
|
|
+
|
|
|
+export default ({ command, mode }: ConfigEnv): UserConfig => {
|
|
|
+ let env = {} as any;
|
|
|
+ const isBuild = command === "build";
|
|
|
+ if (!isBuild) {
|
|
|
+ env = loadEnv(
|
|
|
+ process.argv[3] === "--mode" ? process.argv[4] : process.argv[3],
|
|
|
+ root,
|
|
|
+ );
|
|
|
+ } else {
|
|
|
+ env = loadEnv(mode, root);
|
|
|
+ }
|
|
|
+
|
|
|
+ return {
|
|
|
+ server: {
|
|
|
+ host: "0.0.0.0", // 监听所有网络接口
|
|
|
+ port: 5173, // 可选:指定端口
|
|
|
+ },
|
|
|
+ base: "./",
|
|
|
+ plugins: [
|
|
|
+ vue(),
|
|
|
+ vueDevTools(),
|
|
|
+ tailwindcss(),
|
|
|
+ AutoImport({
|
|
|
+ resolvers: [ElementPlusResolver()],
|
|
|
+ }),
|
|
|
+ Components({
|
|
|
+ dts: true,
|
|
|
+ resolvers: [ElementPlusResolver(), MotionResolver()],
|
|
|
+ }),
|
|
|
+ ],
|
|
|
+ resolve: {
|
|
|
+ alias: {
|
|
|
+ "@": fileURLToPath(new URL("./src", import.meta.url)),
|
|
|
+ "@components": fileURLToPath(
|
|
|
+ new URL("./src/components", import.meta.url),
|
|
|
+ ),
|
|
|
+ "@assets": fileURLToPath(new URL("./src/assets", import.meta.url)),
|
|
|
+ "@api": fileURLToPath(new URL("./src/api", import.meta.url)),
|
|
|
+ "@utils": fileURLToPath(new URL("./src/utils", import.meta.url)),
|
|
|
+ "@types": fileURLToPath(new URL("./src/types", import.meta.url)),
|
|
|
+ "@stores": fileURLToPath(new URL("./src/stores", import.meta.url)),
|
|
|
+ "@hooks": fileURLToPath(new URL("./src/hooks", import.meta.url)),
|
|
|
+ },
|
|
|
},
|
|
|
- },
|
|
|
-});
|
|
|
+ };
|
|
|
+};
|