From 2bb433c3cd23ec182c44fdb8a687d48d5d9ec0be Mon Sep 17 00:00:00 2001 From: xiaoxian521 <1923740402@qq.com> Date: Thu, 10 Nov 2022 11:47:07 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E5=B0=86`baseURL`=E5=92=8C=E5=85=A8?= =?UTF-8?q?=E5=B1=80=E7=8E=AF=E5=A2=83=E4=BB=A3=E7=90=86=E5=88=A0=E9=99=A4?= =?UTF-8?q?=EF=BC=8C=E5=8F=AF=E7=9B=B4=E6=8E=A5=E5=9C=A8`vite.config.ts`?= =?UTF-8?q?=E7=BC=96=E5=86=99=EF=BC=8C=E5=8D=B3=E6=96=B9=E4=BE=BF=E5=8F=88?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E5=A4=9A=E4=B8=AA=E4=BB=A3=E7=90=86=E5=9C=B0?= =?UTF-8?q?=E5=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.development | 6 ------ .env.production | 3 --- .env.staging | 7 ++----- build/index.ts | 9 +-------- src/api/list.ts | 2 +- src/api/mock.ts | 2 +- src/api/routes.ts | 2 +- src/api/system.ts | 2 +- src/api/user.ts | 2 +- src/utils/http/index.ts | 11 +---------- src/views/login/index.vue | 2 +- src/views/permission/page/index.vue | 2 +- types/global.d.ts | 2 -- vite.config.ts | 20 ++++---------------- 14 files changed, 15 insertions(+), 57 deletions(-) diff --git a/.env.development b/.env.development index c3f4bbd67..d1097a1d5 100644 --- a/.env.development +++ b/.env.development @@ -4,11 +4,5 @@ VITE_PORT = 8848 # 开发环境读取配置文件路径 VITE_PUBLIC_PATH = / -# 开发环境代理 -VITE_PROXY_DOMAIN = /api - # 开发环境路由历史模式 VITE_ROUTER_HISTORY = "hash" - -# 开发环境后端地址 -VITE_PROXY_DOMAIN_REAL = "http://127.0.0.1:3000" \ No newline at end of file diff --git a/.env.production b/.env.production index fc87876a3..e04f02291 100644 --- a/.env.production +++ b/.env.production @@ -4,9 +4,6 @@ VITE_PUBLIC_PATH = / # 线上环境路由历史模式 VITE_ROUTER_HISTORY = "hash" -# 线上环境后端地址 -VITE_PROXY_DOMAIN_REAL = "" - # 是否为打包后的文件提供传统浏览器兼容性支持 支持 true 不支持 false VITE_LEGACY = false diff --git a/.env.staging b/.env.staging index f89ad71f6..158f7fdb1 100644 --- a/.env.staging +++ b/.env.staging @@ -7,16 +7,13 @@ VITE_PUBLIC_PATH = / # 线上环境路由历史模式 VITE_ROUTER_HISTORY = "hash" -# 线上环境后端地址 -VITE_PROXY_DOMAIN_REAL = "" - # 是否为打包后的文件提供传统浏览器兼容性支持 支持 true 不支持 false VITE_LEGACY = false # 是否在打包时使用cdn替换本地库 替换 true 不替换 false -VITE_CDN = false +VITE_CDN = true # 是否启用gzip压缩或brotli压缩(分两种情况,删除原始文件和不删除原始文件) # 压缩时不删除原始文件的配置:gzip、brotli、both(同时开启 gzip 与 brotli 压缩)、none(不开启压缩,默认) # 压缩时删除原始文件的配置:gzip-clear、brotli-clear、both-clear(同时开启 gzip 与 brotli 压缩)、none(不开启压缩,默认) -VITE_COMPRESSION = "none" \ No newline at end of file +VITE_COMPRESSION = "both-clear" diff --git a/build/index.ts b/build/index.ts index ed7cdfbbb..19d86889e 100644 --- a/build/index.ts +++ b/build/index.ts @@ -4,8 +4,6 @@ const warpperEnv = (envConf: Recordable): ViteEnv => { const ret: ViteEnv = { VITE_PORT: 8848, VITE_PUBLIC_PATH: "", - VITE_PROXY_DOMAIN: "", - VITE_PROXY_DOMAIN_REAL: "", VITE_ROUTER_HISTORY: "", VITE_LEGACY: false, VITE_CDN: false, @@ -30,14 +28,9 @@ const warpperEnv = (envConf: Recordable): ViteEnv => { return ret; }; -/** 跨域代理重写 */ -const regExps = (value: string, reg: string): string => { - return value.replace(new RegExp(`^${reg}`, "g"), ""); -}; - /** 环境变量 */ const loadEnv = (): ViteEnv => { return import.meta.env; }; -export { warpperEnv, regExps, loadEnv }; +export { warpperEnv, loadEnv }; diff --git a/src/api/list.ts b/src/api/list.ts index 5e59d6ffd..5787148b4 100644 --- a/src/api/list.ts +++ b/src/api/list.ts @@ -1,4 +1,4 @@ -import { http } from "../utils/http"; +import { http } from "@/utils/http"; type Result = { success: boolean; diff --git a/src/api/mock.ts b/src/api/mock.ts index 289c5b421..3dac0fb8e 100644 --- a/src/api/mock.ts +++ b/src/api/mock.ts @@ -1,4 +1,4 @@ -import { http } from "../utils/http"; +import { http } from "@/utils/http"; type Result = { success: boolean; diff --git a/src/api/routes.ts b/src/api/routes.ts index 37f5e8f8c..277c5f3a1 100644 --- a/src/api/routes.ts +++ b/src/api/routes.ts @@ -1,4 +1,4 @@ -import { http } from "../utils/http"; +import { http } from "@/utils/http"; type Result = { success: boolean; diff --git a/src/api/system.ts b/src/api/system.ts index be3db8ef9..5e5ea1efe 100644 --- a/src/api/system.ts +++ b/src/api/system.ts @@ -1,4 +1,4 @@ -import { http } from "../utils/http"; +import { http } from "@/utils/http"; type Result = { success: boolean; diff --git a/src/api/user.ts b/src/api/user.ts index 8893dba2f..9f8125b70 100644 --- a/src/api/user.ts +++ b/src/api/user.ts @@ -1,4 +1,4 @@ -import { http } from "../utils/http"; +import { http } from "@/utils/http"; export type UserResult = { success: boolean; diff --git a/src/utils/http/index.ts b/src/utils/http/index.ts index fc98af1e6..2489023fc 100644 --- a/src/utils/http/index.ts +++ b/src/utils/http/index.ts @@ -11,21 +11,12 @@ import { } from "./types.d"; import { stringify } from "qs"; import NProgress from "../progress"; -// import { loadEnv } from "@build/index"; import { getToken, formatToken } from "@/utils/auth"; import { useUserStoreHook } from "@/store/modules/user"; -// 加载环境变量 VITE_PROXY_DOMAIN(开发环境) VITE_PROXY_DOMAIN_REAL(打包后的线上环境) -// const { VITE_PROXY_DOMAIN, VITE_PROXY_DOMAIN_REAL } = loadEnv(); - // 相关配置请参考:www.axios-js.com/zh-cn/docs/#axios-request-config-1 const defaultConfig: AxiosRequestConfig = { - // baseURL: - // process.env.NODE_ENV === "production" - // ? VITE_PROXY_DOMAIN_REAL - // : VITE_PROXY_DOMAIN, - // 当前使用mock模拟请求,将baseURL制空,如果你的环境用到了http请求,请删除下面的baseURL启用上面的baseURL,并将第14行、19行代码注释取消 - baseURL: "", + // 请求超时时间 timeout: 10000, headers: { Accept: "application/json, text/plain, */*", diff --git a/src/views/login/index.vue b/src/views/login/index.vue index fcfc47a05..642db0e8a 100644 --- a/src/views/login/index.vue +++ b/src/views/login/index.vue @@ -67,7 +67,7 @@ const onLogin = async (formEl: FormInstance | undefined) => { await formEl.validate((valid, fields) => { if (valid) { useUserStoreHook() - .loginByUsername({ username: ruleForm.username }) + .loginByUsername({ username: ruleForm.username, password: "admin123" }) .then(res => { if (res.success) { // 获取后端路由 diff --git a/src/views/permission/page/index.vue b/src/views/permission/page/index.vue index a5a8b9d8b..725b49c15 100644 --- a/src/views/permission/page/index.vue +++ b/src/views/permission/page/index.vue @@ -30,7 +30,7 @@ const options = [ function onChange() { useUserStoreHook() - .loginByUsername({ username: username.value }) + .loginByUsername({ username: username.value, password: "admin123" }) .then(res => { if (res.success) { usePermissionStoreHook().clearAllCachePage(); diff --git a/types/global.d.ts b/types/global.d.ts index 06d973966..5cb8b027c 100644 --- a/types/global.d.ts +++ b/types/global.d.ts @@ -86,8 +86,6 @@ declare global { declare interface ViteEnv { VITE_PORT: number; VITE_PUBLIC_PATH: string; - VITE_PROXY_DOMAIN: string; - VITE_PROXY_DOMAIN_REAL: string; VITE_ROUTER_HISTORY: string; VITE_LEGACY: boolean; VITE_CDN: boolean; diff --git a/vite.config.ts b/vite.config.ts index b1c770772..64ef0b8d8 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -1,7 +1,7 @@ import dayjs from "dayjs"; import { resolve } from "path"; import pkg from "./package.json"; -import { warpperEnv, regExps } from "./build"; +import { warpperEnv } from "./build"; import { getPluginsList } from "./build/plugins"; import { UserConfigExport, ConfigEnv, loadEnv } from "vite"; @@ -31,9 +31,7 @@ export default ({ command, mode }: ConfigEnv): UserConfigExport => { VITE_PORT, VITE_LEGACY, VITE_COMPRESSION, - VITE_PUBLIC_PATH, - VITE_PROXY_DOMAIN, - VITE_PROXY_DOMAIN_REAL + VITE_PUBLIC_PATH } = warpperEnv(loadEnv(mode, root)); return { base: VITE_PUBLIC_PATH, @@ -48,18 +46,8 @@ export default ({ command, mode }: ConfigEnv): UserConfigExport => { // 端口号 port: VITE_PORT, host: "0.0.0.0", - // 本地跨域代理 - proxy: - VITE_PROXY_DOMAIN_REAL.length > 0 - ? { - [VITE_PROXY_DOMAIN]: { - target: VITE_PROXY_DOMAIN_REAL, - // ws: true, - changeOrigin: true, - rewrite: (path: string) => regExps(path, VITE_PROXY_DOMAIN) - } - } - : null + // 本地跨域代理 https://cn.vitejs.dev/config/server-options.html#server-proxy + proxy: {} }, plugins: getPluginsList(command, VITE_LEGACY, VITE_CDN, VITE_COMPRESSION), optimizeDeps: {