diff --git a/.env.production b/.env.production index 6d79b3c..dbfa767 100644 --- a/.env.production +++ b/.env.production @@ -2,8 +2,8 @@ VITE_ENV = 'production' VITE_OUTPUT_DIR = 'dist' # public path -VITE_PUBLIC_PATH = /aixiaocaishen -# VITE_PUBLIC_PATH = / +# VITE_PUBLIC_PATH = /aixiaocaishen +VITE_PUBLIC_PATH = / # Whether to open mock VITE_USE_MOCK = true diff --git a/src/views/AIchat.vue b/src/views/AIchat.vue index f2e5347..9b122bd 100644 --- a/src/views/AIchat.vue +++ b/src/views/AIchat.vue @@ -585,21 +585,21 @@ watch( market: codeData.value.market, code: codeData.value.code, language: "cn", //t.value.suoxie, - // brainPrivilegeState: 1, - // swordPrivilegeState: 1, - // stockForecastPrivilegeState: 1, - // spaceForecastPrivilegeState: 1, - // aibullPrivilegeState: 1, - // aigoldBullPrivilegeState: 1, - // airadarPrivilegeState: 1, + brainPrivilegeState: 1, + swordPrivilegeState: 1, + stockForecastPrivilegeState: 1, + spaceForecastPrivilegeState: 1, + aibullPrivilegeState: 1, + aigoldBullPrivilegeState: 1, + airadarPrivilegeState: 1, // marketList: 1, - brainPrivilegeState: userStore.brainPerssion, - swordPrivilegeState: userStore.swordPerssion, - stockForecastPrivilegeState: userStore.pricePerssion, - spaceForecastPrivilegeState: userStore.timePerssion, - aibullPrivilegeState: userStore.aibullPerssion, - aigoldBullPrivilegeState: userStore.aiGnbullPerssion, - airadarPrivilegeState: userStore.airadarPerssion, + // brainPrivilegeState: userStore.brainPerssion, + // swordPrivilegeState: userStore.swordPerssion, + // stockForecastPrivilegeState: userStore.pricePerssion, + // spaceForecastPrivilegeState: userStore.timePerssion, + // aibullPrivilegeState: userStore.aibullPerssion, + // aigoldBullPrivilegeState: userStore.aiGnbullPerssion, + // airadarPrivilegeState: userStore.airadarPerssion, marketList: userStore.aiGoldMarketList, }); diff --git a/src/views/homePage.vue b/src/views/homePage.vue index 47c9944..04c3a3a 100644 --- a/src/views/homePage.vue +++ b/src/views/homePage.vue @@ -487,33 +487,29 @@ const onBlur = function () { }, 200); }; -window.addEventListener("resize", () => { - // 检测是否为iOS设备 - const isIOS = /iPhone|iPad|iPod|ios/i.test(navigator.userAgent); - console.log("是否为iOS设备:", isIOS); - if (!isIOS) { - console.log("窗口大小变化"); - const homePage = document.querySelector(".homepage"); - homePage.style.height = `${window.innerHeight}px`; - } -}); - -// 禁用全局触摸滚动 -document.addEventListener( - "touchmove", - (e) => { - if (!dataStore.isFeedback) { - // 判断触摸目标是否在可滚动区域内 - const isScrollableArea = e.target.closest(".tab-content"); - - // 如果不在可滚动区域,则阻止滚动 - if (!isScrollableArea) { - e.preventDefault(); - } +// window.addEventListener("resize", () => { +// // 检测是否为iOS设备 +// const isIOS = /iPhone|iPad|iPod|ios/i.test(navigator.userAgent); +// console.log("是否为iOS设备:", isIOS); +// if (!isIOS) { +// console.log("窗口大小变化"); +// const homePage = document.querySelector(".homepage"); +// homePage.style.height = `${window.innerHeight}px`; +// } +// }); + +let touchmoveHandlerRef = null; +const touchmoveHandler = (e) => { + if (!dataStore.isFeedback) { + // 判断触摸目标是否在可滚动区域内 + const isScrollableArea = e.target.closest(".tab-content"); + + // 如果不在可滚动区域,则阻止滚动 + if (!isScrollableArea) { + e.preventDefault(); } - }, - { passive: false } -); + } +}; onMounted(async () => { // const isPhone = @@ -525,6 +521,13 @@ onMounted(async () => { // "localToken", // decodeURIComponent(String(getQueryVariable("token"))) // ); + + // 禁用全局触摸滚动 + touchmoveHandlerRef = touchmoveHandler; + document.addEventListener("touchmove", touchmoveHandlerRef, { + passive: false, + }); + setHeight(document.getElementById("testId")); // 给父组件发送窗口高度 // 获取次数 await chatStore.getUserCount(); @@ -533,12 +536,45 @@ onMounted(async () => { // 监听页面高度 throttledHeightListener(); + const isAndroid = /Android/i.test(navigator.userAgent); + if (isAndroid) { + window.visualViewport.addEventListener("resize", () => { + const keyboardHeight = window.innerHeight - window.visualViewport.height; + console.log("视口大小变化", keyboardHeight); + + // 如果键盘高度大于100px,认为键盘弹出 + if (keyboardHeight > 100) { + const footer = document.querySelector(".el-footer"); + footer.style.paddingBottom = `${keyboardHeight}px`; + + // 滚动到输入框位置 + setTimeout(() => { + const msgInput = document.querySelector(".msg-input"); + if (msgInput) { + msgInput.scrollIntoView({ behavior: "smooth" }); + } + }, 300); + } else { + // 键盘收起 + const footer = document.querySelector(".el-footer"); + footer.style.paddingBottom = "0px"; + } + }); + } + // 添加输入框焦点处理 // handleInputFocus(); // 初始化视口高度变量 // updateAppHeight(); }); + +onUnmounted(() => { + if (touchmoveHandlerRef) { + console.log("卸载touchmoveHandlerRef组件"); + document.removeEventListener("touchmove", touchmoveHandlerRef); + } +});