fix: chat 视图 loading 在等待首个 assistant 响应期间持续显示
This commit is contained in:
@@ -174,7 +174,7 @@
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view v-if="generating && generationStatus !== 'failed'" class="chat-loading">
|
||||
<view v-if="showChatLoading" class="chat-loading">
|
||||
<view class="loading-orbit" :class="{ streaming: generationStatus === 'streaming' }">
|
||||
<view class="orbit-ring outer"></view>
|
||||
<view class="orbit-ring inner"></view>
|
||||
@@ -941,6 +941,19 @@ const generationCopy = computed(() => {
|
||||
return '正在把你的心愿写成故事'
|
||||
})
|
||||
|
||||
// chat 视图 loading 显示条件:等待首个 assistant 响应期间
|
||||
// - generationPhase === 'generating':生成流程未完成
|
||||
// - generationStatus !== 'failed':非失败状态
|
||||
// - 最后一条消息是 user:说明还没收到 assistant 响应(card/outline/novel)
|
||||
const showChatLoading = computed(() => {
|
||||
if (generationPhase.value !== 'generating') return false
|
||||
if (generationStatus.value === 'failed') return false
|
||||
const list = resultMessages.value
|
||||
if (!list || !list.length) return false
|
||||
const lastMsg = list[list.length - 1]
|
||||
return lastMsg && lastMsg.role === 'user'
|
||||
})
|
||||
|
||||
const generationSubcopy = computed(() => {
|
||||
if (generationStatus.value === 'verySlow') return '如果网络波动,稍后会给你温和提示,不会丢掉当前心愿。'
|
||||
if (generationStatus.value === 'slow') return 'AI 还没有吐出第一句话,但请求仍在进行中。'
|
||||
|
||||
Reference in New Issue
Block a user