优化聊天加载问题

This commit is contained in:
2025-08-19 11:26:52 +08:00
parent 5988c81e3e
commit 5a088555c8

View File

@@ -718,6 +718,10 @@ export default {
this.inputMessage = ''
this.sending = true
// 定义超时变量
let streamTimeout = null
let noDataTimeout = null
// 添加到请求队列
const requestId = Date.now()
this.requestQueue.push(requestId)
@@ -730,6 +734,9 @@ export default {
messageId: 'user-' + Date.now()
}
this.messages.push(userMsg)
// 添加用户消息后立即滚动到底部
this.scrollToBottom(false, true) // 立即滚动,强制执行
// 添加AI消息占位符
const aiMsg = {
@@ -743,7 +750,7 @@ export default {
}
this.messages.push(aiMsg)
this.scrollToBottom(true) // 添加消息后使用平滑滚动
this.scrollToBottom(true, true) // 添加消息后使用平滑滚动,强制执行
try {
// 创建流式聊天
@@ -766,7 +773,7 @@ export default {
})
// 添加额外的超时保护
const streamTimeout = setTimeout(() => {
streamTimeout = setTimeout(() => {
if (cancel) {
cancel('流式响应超时')
}
@@ -781,7 +788,6 @@ export default {
const { reader, decoder } = response
let buffer = ''
let lastUpdateTime = Date.now()
let noDataTimeout = null
while (true) {
// 设置无数据超时检测
@@ -907,7 +913,7 @@ export default {
// 从监控系统中移除请求
this.activeRequests.delete(requestId)
this.scrollToBottom(true) // 发送完成后使用平滑滚动
this.scrollToBottom(true, true) // 发送完成后使用平滑滚动,强制执行
}
},