新增消息记录组件对特定消息类型的处理逻辑,支持解析JSON格式内容并优先显示解析后的内容;优化消息过滤条件,确保正确展示消息记录。
This commit is contained in:
@@ -757,9 +757,34 @@ const MessageRecord: React.FC<MessageRecordProps> = ({ contract }) => {
|
|||||||
dangerouslySetInnerHTML={{ __html: msg.content }}
|
dangerouslySetInnerHTML={{ __html: msg.content }}
|
||||||
></div>
|
></div>
|
||||||
))}
|
))}
|
||||||
|
|
||||||
|
{group.messages
|
||||||
|
.filter(v => [570425393].includes(v.msgType))
|
||||||
|
.map(msg => {
|
||||||
|
// 解析JSON字符串
|
||||||
|
let displayContent = msg.content;
|
||||||
|
try {
|
||||||
|
const parsedContent = JSON.parse(msg.content);
|
||||||
|
if (
|
||||||
|
parsedContent &&
|
||||||
|
typeof parsedContent === "object" &&
|
||||||
|
parsedContent.content
|
||||||
|
) {
|
||||||
|
displayContent = parsedContent.content;
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
// 如果解析失败,使用原始内容
|
||||||
|
displayContent = msg.content;
|
||||||
|
}
|
||||||
|
return (
|
||||||
|
<div key={`divider-${msg.id}`} className={styles.messageTime}>
|
||||||
|
{displayContent}
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
})}
|
||||||
<div className={styles.messageTime}>{group.time}</div>
|
<div className={styles.messageTime}>{group.time}</div>
|
||||||
{group.messages
|
{group.messages
|
||||||
.filter(v => ![10000].includes(v.msgType))
|
.filter(v => ![10000, 570425393].includes(v.msgType))
|
||||||
.map(msg => {
|
.map(msg => {
|
||||||
return renderMessage(msg);
|
return renderMessage(msg);
|
||||||
})}
|
})}
|
||||||
|
|||||||
Reference in New Issue
Block a user