修复了在markdown里面有代码段的错误结束

This commit is contained in:
GreenDreamer 2025-02-25 19:26:02 +08:00
parent 16e2f590ae
commit 172c8ab2d9

View File

@ -47,13 +47,24 @@ function ExportAllMsgButtonCall({
}));
const jsonString = `\`\`\`json\n${JSON.stringify(jsonArray, null, 4)}\n\`\`\``;
function convertToMarkdown(jsonArray: { role: any; content: any; }[]) {
const { t } = useTranslation();
// 定义一个函数来转义 ```` ``` ```` 字符串
const escapeBackticks = (text: string): string => {
return text.replace(/```/g, '\t```');
};
return jsonArray.map(({ role, content }) => {
const roleText = role === 'user' ? t("export.user_says") : t("export.ai_says");
return `## ${roleText}\n\n${content}`;
// 转义 content 中的 ```` ``` ```` 字符串
const escapedContent = escapeBackticks(content);
const roleText = role === 'user' ? t("export.user_says") : t("export.ai_says");
return `## ${roleText}\n\n${escapedContent}`;
}).join('\n\n');
}
}
const markdownString = convertToMarkdown(jsonArray);
const markdownValue = useMemo(() => {