Fix the bug of being unable to delete messages.

This commit is contained in:
Rafi
2023-03-22 15:55:06 +08:00
parent afa3e499dc
commit 1ff1c46e37
3 changed files with 30 additions and 18 deletions

View File

@@ -41,7 +41,7 @@ const deleteMessage = async () => {
method: 'DELETE' method: 'DELETE'
}) })
if (!error.value) { if (!error.value) {
this.$emit('deleteMessage', props.messageIndex) props.deleteMessage(props.messageIndex)
showSnackbar('Deleted!') showSnackbar('Deleted!')
} }
showSnackbar('Delete failed') showSnackbar('Delete failed')

View File

@@ -12,14 +12,19 @@ const md = new MarkdownIt({
}, },
}) })
const props = defineProps(['content']) const props = defineProps({
message: {
type: Object,
required: true
}
})
const contentHtml = ref('') const contentHtml = ref('')
const contentElm = ref(null) const contentElm = ref(null)
watchEffect(() => { watchEffect(() => {
contentHtml.value = props.content ? md.render(props.content) : '' contentHtml.value = props.message.message ? md.render(props.message.message) : ''
}) })
const bindCopyCodeToButtons = () => { const bindCopyCodeToButtons = () => {
@@ -54,11 +59,19 @@ onUpdated(() => {
</script> </script>
<template> <template>
<v-card
:color="message.is_bot ? '' : 'primary'"
rounded="lg"
elevation="2"
>
<v-card-text>
<div <div
ref="contentElm" ref="contentElm"
v-html="contentHtml" v-html="contentHtml"
class="chat-msg-content" class="chat-msg-content"
></div> ></div>
</v-card-text>
</v-card>
</template> </template>
<style> <style>

View File

@@ -56,7 +56,7 @@ const fetchReply = async (message, parentMessageId) => {
const data = Object.assign({}, currentModel.value, { const data = Object.assign({}, currentModel.value, {
openaiApiKey: openaiApiKey.value, openaiApiKey: openaiApiKey.value,
message: message, message: message,
parentMessageId: parentMessageId, // parentMessageId: parentMessageId,
conversationId: currentConversation.value.id conversationId: currentConversation.value.id
}) })
@@ -93,6 +93,13 @@ const fetchReply = async (message, parentMessageId) => {
throw new Error(data.error); throw new Error(data.error);
} }
if (event === 'userMessageId') {
console.log(currentConversation.value.messages[currentConversation.value.messages.length - 1])
currentConversation.value.messages[currentConversation.value.messages.length - 1].id = data.userMessageId
console.log(currentConversation.value.messages[currentConversation.value.messages.length - 1])
return;
}
if (event === 'done') { if (event === 'done') {
if (currentConversation.value.id === null) { if (currentConversation.value.id === null) {
currentConversation.value.id = data.conversationId currentConversation.value.id = data.conversationId
@@ -184,15 +191,7 @@ const deleteMessage = (index) => {
:use-prompt="usePrompt" :use-prompt="usePrompt"
:delete-message="deleteMessage" :delete-message="deleteMessage"
/> />
<v-card <MsgContent :message="message" />
:color="message.is_bot ? '' : 'primary'"
rounded="lg"
elevation="2"
>
<v-card-text>
<MsgContent :content="message.message" />
</v-card-text>
</v-card>
<MessageActions <MessageActions
v-if="message.is_bot" v-if="message.is_bot"
:message="message" :message="message"