Browse Source

情绪大模型限制只在搜索股票完成后滚动。

dev
宋杰 9 hours ago
parent
commit
a97788e7c9
  1. 21
      src/views/AiEmotion.vue

21
src/views/AiEmotion.vue

@ -587,6 +587,8 @@ const addStock = (stockData) => {
// //
isHistoryMode.value = true; isHistoryMode.value = true;
isUserInitiated.value = false; isUserInitiated.value = false;
//
shouldEnableAutoScroll.value = false;
// 1. stockList // 1. stockList
isPageLoaded.value = false; // isPageLoaded.value = false; //
@ -666,6 +668,7 @@ const hasTriggeredAudio = ref(false); // 是否已触发音频播放
const hasTriggeredTypewriter = ref(false); // const hasTriggeredTypewriter = ref(false); //
const intersectionObserver = ref(null); // observer const intersectionObserver = ref(null); // observer
const isUserInitiated = ref(false); // const isUserInitiated = ref(false); //
const shouldEnableAutoScroll = ref(false); // true
// 使parsedConclusion // 使parsedConclusion
@ -2202,6 +2205,8 @@ async function handleSendMessage(input, onComplete) {
messages.value = []; messages.value = [];
// //
addedStocks.value.clear(); addedStocks.value.clear();
//
shouldEnableAutoScroll.value = true;
// //
startHeightObserver(); startHeightObserver();
// //
@ -2323,6 +2328,8 @@ async function handleSendMessage(input, onComplete) {
// 使nextTickDOM // 使nextTickDOM
nextTick(() => { nextTick(() => {
messages.value = []; messages.value = [];
//
shouldEnableAutoScroll.value = false;
// //
startHeightObserver(); startHeightObserver();
// //
@ -2410,6 +2417,8 @@ async function fetchData(code, market, stockName, queryText, stockId) {
// 使nextTickDOM // 使nextTickDOM
nextTick(() => { nextTick(() => {
messages.value = []; messages.value = [];
//
shouldEnableAutoScroll.value = false;
// //
startHeightObserver(); startHeightObserver();
// //
@ -2468,6 +2477,8 @@ async function fetchData(code, market, stockName, queryText, stockId) {
// 使nextTickDOM // 使nextTickDOM
nextTick(() => { nextTick(() => {
messages.value = []; messages.value = [];
// API
shouldEnableAutoScroll.value = false;
// //
startHeightObserver(); startHeightObserver();
// //
@ -2510,6 +2521,8 @@ async function fetchData(code, market, stockName, queryText, stockId) {
// 使nextTickDOM // 使nextTickDOM
nextTick(() => { nextTick(() => {
messages.value = []; messages.value = [];
//
shouldEnableAutoScroll.value = false;
// //
startHeightObserver(); startHeightObserver();
// //
@ -3011,6 +3024,12 @@ const startHeightObserver = () => {
// //
stopHeightObserver(); stopHeightObserver();
//
if (!shouldEnableAutoScroll.value) {
console.log("跳过启动自动滚动监听器:非搜索新数据场景");
return;
}
isAutoScrollEnabled.value = true; isAutoScrollEnabled.value = true;
// ResizeObserver // ResizeObserver
@ -3219,6 +3238,8 @@ onMounted(async () => {
// 使nextTickDOM // 使nextTickDOM
nextTick(() => { nextTick(() => {
messages.value = []; messages.value = [];
//
shouldEnableAutoScroll.value = false;
// //
startHeightObserver(); startHeightObserver();
// //

Loading…
Cancel
Save