From 5f643949d62e3b216ef63e0e9efdfc82cd89a8d6 Mon Sep 17 00:00:00 2001 From: DebugIsFalse <511418503@qq.com> Date: Thu, 16 May 2024 17:51:59 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20markdown=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/md/renderer.vue | 2 +- pages/search/[id].vue | 35 +++++++++++++++++++++++++---------- 2 files changed, 26 insertions(+), 11 deletions(-) diff --git a/components/md/renderer.vue b/components/md/renderer.vue index a1bebde..a25eb85 100644 --- a/components/md/renderer.vue +++ b/components/md/renderer.vue @@ -23,7 +23,7 @@ const initMarkdownIt = new MarkdownIt({ } catch (__) {} } - return '
' + md.utils.escapeHtml(str) + '
'; + return '
' + initMarkdownIt.utils.escapeHtml(str) + '
'; } }) const handleRenderMd = () => { diff --git a/pages/search/[id].vue b/pages/search/[id].vue index 0f16621..2cd4e12 100644 --- a/pages/search/[id].vue +++ b/pages/search/[id].vue @@ -47,7 +47,7 @@ @@ -62,7 +62,7 @@ -
+
来源
@@ -182,9 +182,11 @@ const handleContinueAsk = (question) => { if (asking.value) return; asking.value = true; } -// 处理generate + +// 处理ai generate let aiChatController = null; // 用户取消操作方法 const markedEnd = '[DONE]'; +let storeSource = []; const handleFormFetchData = (fetchData) => { let message = {}; try { @@ -195,22 +197,35 @@ const handleFormFetchData = (fetchData) => { if (Object.keys(message).length === 0) return; const index = data.value.length === 0 ? 0 : data.value.length - 1; data.value[index] = data.value[index] || {}; - if (message.meta.type === 'answer') { + const { meta, choices } = message; + if (meta.type === 'answer') { Object.assign(data.value[index], { question: state.query, article: message.choices[0].message.content }) - } else if (message.meta.type === 'log') { - console.log('log', JSON.stringify(message)) - } else if (message.meta.type === 'rephrase_question') { - Object.assign(data.value[index], { - description: message.choices[0].message.content - }) + return; + } + if (meta.type === 'log') { + if (meta.action === 'rephrase_question') { + Object.assign(data.value[index], { description: choices[0].message.content }) + } else if (meta.action === 'search_file') { + let source = choices[0].message.content; + storeSource = source.split('\n').map(item => { + return { + label: item, + link: '', + repo: '' + } + }); + } } } const handleMessage = (event) => { if (event.data === markedEnd) { asking.value = false; + const index = data.value.length === 0 ? 0 : data.value.length - 1; + data.value[index] = data.value[index] || {}; + Object.assign(data.value[index], { source: storeSource }); return; } handleFormFetchData(event.data) -- GitLab