From 9e9fd37bda983fdaec139bfa06cccfd53b27b668 Mon Sep 17 00:00:00 2001 From: duanyongcheng77 Date: Tue, 21 Jan 2025 19:37:28 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=F0=9F=90=9B=20fixed=20bug=20#779?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 助手的预设消息保存逻辑的修改 --- .../AssistantSettings/AssistantMessagesSettings.tsx | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/renderer/src/pages/settings/AssistantSettings/AssistantMessagesSettings.tsx b/src/renderer/src/pages/settings/AssistantSettings/AssistantMessagesSettings.tsx index 5c722fc5..a74e3823 100644 --- a/src/renderer/src/pages/settings/AssistantSettings/AssistantMessagesSettings.tsx +++ b/src/renderer/src/pages/settings/AssistantSettings/AssistantMessagesSettings.tsx @@ -2,7 +2,7 @@ import { DeleteOutlined, PlusOutlined } from '@ant-design/icons' import { Assistant, AssistantMessage, AssistantSettings } from '@renderer/types' import { Button, Card, Col, Divider, Form as FormAntd, FormInstance, Row, Space, Switch } from 'antd' import TextArea from 'antd/es/input/TextArea' -import { FC, useRef, useState } from 'react' +import { FC, useMemo, useRef, useState } from 'react' import { useTranslation } from 'react-i18next' import styled from 'styled-components' @@ -19,7 +19,15 @@ const AssistantMessagesSettings: FC = ({ assistant, updateAssistant, upda const [messages, setMessagess] = useState(assistant?.messages || []) const [hideMessages, setHideMessages] = useState(assistant?.settings?.hideMessages || false) - const showSaveButton = (assistant?.messages || []).length !== messages.length + const showSaveButton = useMemo(() => { + const originalMessages = assistant?.messages || [] + if (originalMessages.length !== messages.length) return true + + return messages.some((msg, index) => { + const originalMsg = originalMessages[index] + return !originalMsg || msg.content.trim() !== originalMsg.content.trim() + }) + }, [messages, assistant?.messages]) const onSave = () => { // 检查是否有空对话组