Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
sdream-ai-fe
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
侯明涛
sdream-ai-fe
Commits
13311e18
Commit
13311e18
authored
Dec 18, 2025
by
Liu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix:欢迎语更换时机
parent
8537a077
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
11 additions
and
3 deletions
+11
-3
src/pages/ChatTactics/TacticsChat.tsx
+11
-3
No files found.
src/pages/ChatTactics/TacticsChat.tsx
View file @
13311e18
...
...
@@ -538,6 +538,8 @@ export const TacticsChat: React.FC = () => {
/** 获取qa记录 */
const
getUserQaRecordPage
=
useCallback
(
async
(
conversationId
:
string
)
=>
{
setIsLoading
(
true
)
// 在异步操作开始前保存 createdFromClearRef 的值,避免在异步过程中被其他逻辑修改
const
wasCreatedFromClear
=
createdFromClearRef
.
current
try
{
const
res
=
await
fetchTacticsQaRecordPage
(
conversationId
)
const
qaRecords
=
res
.
data
||
[]
...
...
@@ -574,8 +576,11 @@ export const TacticsChat: React.FC = () => {
}
return
processedMessages
})
// 如果是清除记录创建的新会话且没有历史记录,保持 hasCleared 为 true
setHasCleared
(
createdFromClearRef
.
current
&&
!
hasHistoryFlag
)
// 统一管理 hasCleared 状态:
// 1. 如果是清除记录创建的新会话且没有历史记录,保持 hasCleared 为 true
// 2. 其他情况都设置为 false
// 使用保存的值而不是 ref.current,避免异步过程中的时序问题
setHasCleared
(
wasCreatedFromClear
&&
!
hasHistoryFlag
)
setHistoryDividers
([])
setHasHistory
(
hasHistoryFlag
)
}
...
...
@@ -593,7 +598,8 @@ export const TacticsChat: React.FC = () => {
return
[{
role
:
'system'
}
as
ChatRecord
]
})
// 如果是清除记录创建的新会话,保持 hasCleared 为 true
setHasCleared
(
createdFromClearRef
.
current
)
// 使用保存的值而不是 ref.current,避免异步过程中的时序问题
setHasCleared
(
wasCreatedFromClear
)
setHistoryDividers
([])
// 拉取失败时视为无历史记录,后续可按需触发自动提问
setHasHistory
(
false
)
...
...
@@ -707,6 +713,7 @@ export const TacticsChat: React.FC = () => {
// 每次切换会话时重置历史标记,等待新会话的历史查询结果
setHasHistory
(
null
)
setHistoryDividers
([])
// hasCleared 状态由 getUserQaRecordPage 统一管理,避免时序问题
getUserQaRecordPage
(
id
)
}
else
{
...
...
@@ -715,6 +722,7 @@ export const TacticsChat: React.FC = () => {
setHistoryDividers
([])
setIsLoading
(
false
)
setHasHistory
(
false
)
setHasCleared
(
false
)
}
},
[
id
,
getUserQaRecordPage
,
dispatch
])
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment