瀏覽代碼

fix: reset inputs when reset conversation (#16233)

tags/1.1.1
Panpan 7 月之前
父節點
當前提交
cade0f65e2
沒有連結到貢獻者的電子郵件帳戶。
共有 2 個檔案被更改,包括 12 行新增7 行删除
  1. 6
    3
      web/app/components/base/chat/embedded-chatbot/hooks.tsx
  2. 6
    4
      web/app/components/base/chat/utils.ts

+ 6
- 3
web/app/components/base/chat/embedded-chatbot/hooks.tsx 查看文件

@@ -183,7 +183,10 @@ export const useEmbeddedChatbot = () => {

useEffect(() => {
// init inputs from url params
setInitInputs(getProcessedInputsFromUrlParams())
(async () => {
const inputs = await getProcessedInputsFromUrlParams()
setInitInputs(inputs)
})()
}, [])
useEffect(() => {
const conversationInputs: Record<string, any> = {}
@@ -288,11 +291,11 @@ export const useEmbeddedChatbot = () => {
if (conversationId)
setClearChatList(false)
}, [handleConversationIdInfoChange, setClearChatList])
const handleNewConversation = useCallback(() => {
const handleNewConversation = useCallback(async () => {
currentChatInstanceRef.current.handleStop()
setShowNewConversationItemInList(true)
handleChangeConversation('')
handleNewConversationInputsChange({})
handleNewConversationInputsChange(await getProcessedInputsFromUrlParams())
setClearChatList(true)
}, [handleChangeConversation, setShowNewConversationItemInList, handleNewConversationInputsChange, setClearChatList])


+ 6
- 4
web/app/components/base/chat/utils.ts 查看文件

@@ -10,12 +10,14 @@ async function decodeBase64AndDecompress(base64String: string) {
return new TextDecoder().decode(decompressedArrayBuffer)
}

function getProcessedInputsFromUrlParams(): Record<string, any> {
async function getProcessedInputsFromUrlParams(): Promise<Record<string, any>> {
const urlParams = new URLSearchParams(window.location.search)
const inputs: Record<string, any> = {}
urlParams.forEach(async (value, key) => {
inputs[key] = await decodeBase64AndDecompress(decodeURIComponent(value))
})
await Promise.all(
urlParams.entries().map(async ([key, value]) => {
inputs[key] = await decodeBase64AndDecompress(decodeURIComponent(value))
}),
)
return inputs
}


Loading…
取消
儲存