fix: 优化聊天室消息卡片与页面滚动布局
- 统一用户和AI消息卡片外观,移除头像和背景色区分 - AI消息名称为蓝色l阿福l,用户消息名称为默认色l用户l - 修正全局布局高度链,实现内容区域滚动而非页面滚动 - 消息列表内部滚动,输入框固定在页面底部 - 侧边栏会话列表添加min-height:0确保滚动正常
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
import { useChat } from "@ai-sdk/react";
|
||||
import { DefaultChatTransport, type UIMessage } from "ai";
|
||||
import { App, Avatar, Button, Card, Collapse, Divider, Empty, Flex, Input, Spin, Typography } from "antd";
|
||||
import { App, Button, Card, Collapse, Empty, Flex, Input, Spin, Typography } from "antd";
|
||||
import { useCallback, useEffect, useRef, useState } from "react";
|
||||
import { Streamdown } from "streamdown";
|
||||
|
||||
@@ -98,15 +98,11 @@ export function ChatPanel({ conversationId, projectId }: ChatPanelProps) {
|
||||
<div className="chat-scroll-area" ref={scrollRef}>
|
||||
<Flex gap={8} vertical>
|
||||
{messages.map((msg) => (
|
||||
<Card className={msg.role === "user" ? "msg-user" : "msg-ai"} key={msg.id} size="small">
|
||||
<Card.Meta
|
||||
avatar={
|
||||
<Avatar className={msg.role === "assistant" ? "avatar-ai" : undefined} size="small">
|
||||
{msg.role === "user" ? "你" : "AI"}
|
||||
</Avatar>
|
||||
}
|
||||
title={msg.role === "user" ? "你" : "Alfred"}
|
||||
/>
|
||||
<Card
|
||||
key={msg.id}
|
||||
size="small"
|
||||
title={msg.role === "user" ? "用户" : <span className="msg-title-ai">阿福</span>}
|
||||
>
|
||||
<div className="message-body">
|
||||
{msg.parts.map((part: Record<string, unknown>, i: number) => (
|
||||
<PartRenderer key={i} part={part} role={msg.role} />
|
||||
@@ -183,8 +179,5 @@ function PartRenderer({ part, role }: { part: Record<string, unknown>; role: str
|
||||
/>
|
||||
);
|
||||
}
|
||||
if (partType === "step-start") {
|
||||
return <Divider className="step-divider" />;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user