R后悔药 Rue.js
  • 首页
    • 深度指南
    • 实战例子
    • 快速上手
    • 路由指南
    • 术语表
    • 错误代码参考
  • API
    • 合作伙伴
    • 插件
    • 组件库
    • 工具链
    • Text.js
    • 新闻简报
    • 常见问题
    • 团队
    • 版本发布
    • 社区指南
    • 行为规范
    • 隐私政策
  • 赞助
  • 合作伙伴
设置
目录统计
总条目
  • 按钮 Button
  • 排版 Typography
  • 时间选择器 TimePicker
  • 下拉菜单 Dropdown
  • 悬浮操作按钮 FAB
  • 模态框 Modal
  • 切换 Swap
  • 主题控制器 Theme Controller
  • 手风琴 Accordion
  • 头像 Avatar
  • 徽标 Badge
  • 卡片 Card
  • 轮播 Carousel
  • 聊天气泡 Chat
  • 折叠面板 Collapse
  • 倒计时 Countdown
  • 描述列表 Descriptions
  • 对比 Diff
  • 二维码 QRCode
  • 悬浮 3D 卡片 Hover 3D
  • 悬浮画廊 Hover Gallery
  • 键盘提示 Kbd
  • 列表 List
  • 统计 Stat
  • 状态 Status
  • 表格 Table
  • 文本轮播 Text Rotate
  • 时间线 Timeline
  • 锚点 Anchor
  • 固钉 Affix
  • 面包屑 Breadcrumbs
  • 底部导航 Dock
  • 链接 Link
  • 菜单 Menu
  • 导航栏 Navbar
  • 分页 Pagination
  • 步骤 Steps
  • 选项卡 Tabs
  • 提示 Alert
  • 结果页 Result
  • 空状态 Empty
  • 加载 Loading
  • 全局提示 Message
  • 进度条 Progress
  • 环形进度 Radial Progress
  • 骨架屏 Skeleton
  • 通知提醒框 Notification
  • 轻提示 Toast
  • 气泡确认框 Popconfirm
  • 气泡卡片 Popover
  • 工具提示 Tooltip
  • 日历 Calendar
  • 颜色选择器 ColorPicker
  • 复选框 Checkbox
  • 字段集 Fieldset
  • 表单 Form
  • 文件输入 File Input
  • 筛选器 Filter
  • 标签 Label
  • 单选框 Radio
  • 范围选择 Range
  • 评分 Rating
  • 分段选择 Segmented
  • 自动完成 AutoComplete
  • 选择器 Select
  • 树选择 TreeSelect
  • 树控件 Tree
  • 提及输入 Mentions
  • 穿梭框 Transfer
  • 漫游引导 Tour
  • 输入框 Input
  • 数字输入 InputNumber
  • 文本域 Textarea
  • 开关 Toggle
  • 校验器 Validator
  • 分隔线 Divider
  • 弹性布局 Flex
  • 分割面板 Splitter
  • 抽屉侧边栏 Drawer
  • 页脚 Footer
  • 栅格 Grid
  • 瀑布流 Masonry
  • 布局 Layout
  • 主视觉区 Hero
  • 指示器 Indicator
  • 组合项 Join
  • 蒙版 Mask
  • 水印 Watermark
  • 间距 Space
  • 堆叠 Stack
  • 浏览器样机 Mockup Browser
  • 代码样机 Mockup Code
  • 手机样机 Mockup Phone
  • 窗口样机 Mockup Window
目录统计
总条目
  • 按钮 Button
  • 排版 Typography
  • 时间选择器 TimePicker
  • 下拉菜单 Dropdown
  • 悬浮操作按钮 FAB
  • 模态框 Modal
  • 切换 Swap
  • 主题控制器 Theme Controller
  • 手风琴 Accordion
  • 头像 Avatar
  • 徽标 Badge
  • 卡片 Card
  • 轮播 Carousel
  • 聊天气泡 Chat
  • 折叠面板 Collapse
  • 倒计时 Countdown
  • 描述列表 Descriptions
  • 对比 Diff
  • 二维码 QRCode
  • 悬浮 3D 卡片 Hover 3D
  • 悬浮画廊 Hover Gallery
  • 键盘提示 Kbd
  • 列表 List
  • 统计 Stat
  • 状态 Status
  • 表格 Table
  • 文本轮播 Text Rotate
  • 时间线 Timeline
  • 锚点 Anchor
  • 固钉 Affix
  • 面包屑 Breadcrumbs
  • 底部导航 Dock
  • 链接 Link
  • 菜单 Menu
  • 导航栏 Navbar
  • 分页 Pagination
  • 步骤 Steps
  • 选项卡 Tabs
  • 提示 Alert
  • 结果页 Result
  • 空状态 Empty
  • 加载 Loading
  • 全局提示 Message
  • 进度条 Progress
  • 环形进度 Radial Progress
  • 骨架屏 Skeleton
  • 通知提醒框 Notification
  • 轻提示 Toast
  • 气泡确认框 Popconfirm
  • 气泡卡片 Popover
  • 工具提示 Tooltip
  • 日历 Calendar
  • 颜色选择器 ColorPicker
  • 复选框 Checkbox
  • 字段集 Fieldset
  • 表单 Form
  • 文件输入 File Input
  • 筛选器 Filter
  • 标签 Label
  • 单选框 Radio
  • 范围选择 Range
  • 评分 Rating
  • 分段选择 Segmented
  • 自动完成 AutoComplete
  • 选择器 Select
  • 树选择 TreeSelect
  • 树控件 Tree
  • 提及输入 Mentions
  • 穿梭框 Transfer
  • 漫游引导 Tour
  • 输入框 Input
  • 数字输入 InputNumber
  • 文本域 Textarea
  • 开关 Toggle
  • 校验器 Validator
  • 分隔线 Divider
  • 弹性布局 Flex
  • 分割面板 Splitter
  • 抽屉侧边栏 Drawer
  • 页脚 Footer
  • 栅格 Grid
  • 瀑布流 Masonry
  • 布局 Layout
  • 主视觉区 Hero
  • 指示器 Indicator
  • 组合项 Join
  • 蒙版 Mask
  • 水印 Watermark
  • 间距 Space
  • 堆叠 Stack
  • 浏览器样机 Mockup Browser
  • 代码样机 Mockup Code
  • 手机样机 Mockup Phone
  • 窗口样机 Mockup Window

Chat bubble 聊天气泡

Chat 现在不再只是对 daisyUI 静态结构的薄封装。你可以使用Chat.Bubble这一套复合子组件,也可以直接通过message、author、timestamp、avatar与 items组织整条消息流。

Capability
单条消息语义化

根节点直接支持 message、author、timestamp、avatar 与 footer,不必先手写所有子结构。

Capability
items 数据驱动

items 支持 key、avatar 配置对象、typing、bubbleClassName 与别名字段,适合消息流。

Capability
复合组件保持

Chat.Bubble、Chat.Header、Chat.Footer、Chat.Image 仍然存在。

Capability
Typing 与快捷头像

Chat.Bubble 和 Chat 本体都能声明 typing;Chat.Image 也支持 src 快捷写法。

# 语义化单条消息

根节点直接描述一条消息:头像、作者、时间、正文与脚注都可以作为 props 传入。

AI
Rue Agent
构建完成,我已经把 lint 与 Chat 单测跑过一遍。
自动检查通过
chat image
You
把基础示例 也整理进新的 API 页面里。
已发送

# Typing 与自定义头像

typing 可以直接挂在 Chat 或 Chat.Bubble 上;avatar 配置对象适合放团队缩写、状态徽记或品牌头像。

OPS
Deploy Agent
正在整理日志摘要
Streaming output
chat image
Release Bot

# Chat items 作为消息流

items 适合后台消息中心、智能助手对话和审批日志,支持 key、typing 与 avatar 配置对象。

推荐心智:Chat 负责布局与数据驱动,Chat.Bubble 负责局部精修。
chat image
Rue Agent 09:32
我把基础示例,只把结构收敛进更清晰的 API。
Preview ready
chat image
You 09:33
展示基础场景,把新 API 讲清楚。
Seen
chat image
QA 09:34
正在等待截图比对
Monitoring

# chat-start and chat-end

最基础的左右朝向布局。

It's over Anakin,
I have the high ground.
You underestimate my power!

# Chat 通过数据渲染(数组)

展示手动 map 的写法,适合需要在单条消息附近插入额外逻辑时使用。

It's over Anakin, I have the high ground.
You underestimate my power!
Obi-Wan Kenobi
Obi-Wan Kenobi 12:45
You were the Chosen One!
Delivered
Anakin
Anakin 12:46
I hate you!
Seen at 12:46
What kind of nonsense is this
You have been given a great honor.

# Chat 通过数据渲染(数组,组件内部)

展示组件内部 items 渲染方式,适合完整消息流由上层统一组织时使用。

It's over Anakin, I have the high ground.
You underestimate my power!
chat image
Obi-Wan Kenobi 12:45
You were the Chosen One!
Delivered
chat image
Anakin 12:46
I hate you!
Seen at 12:46
What kind of nonsense is this

# Chat with image

展示头像消息列表场景,但用 Chat.Image 的 src 快捷写法减少样板代码。

Obi-Wan Kenobi
It was said that you would, destroy the Sith, not join them.
Obi-Wan Kenobi
It was you who would bring balance to the Force
Obi-Wan Kenobi
Not leave it in Darkness

# Chat with image, header and footer

头像、头部与脚注都齐全时,适合聊天记录、客服或系统通知列表。

Obi-Wan Kenobi
Obi-Wan Kenobi 12:45
You were the Chosen One!
Delivered
Anakin
Anakin 12:46
I hate you!
Seen at 12:46

# Chat with header and footer

没有头像时,作者名与时间仍然可以通过 Chat.Header 组织。

Obi-Wan Kenobi 2 hours ago
You were my brother, Anakin.
Seen
Obi-Wan Kenobi 2 hour ago
I loved you.
Delivered

# Chat Bubble with colors

展示所有气泡颜色场景,用来说明 color 仍然是最直接的视觉控制层。

What kind of nonsense is this
Put me on the Council and not make me a Master!??
That's never been done in the history of the Jedi.
It's insulting!
Calm down, Anakin.
You have been given a great honor.
To be on the Council at your age.
It's never happened before.

API

Chat 现在分成三层心智:根节点的消息语义 props、items 的数据驱动消息流,以及复合子组件的局部结构控制。

Chat Props

属性说明类型默认值
author / headerName单条消息的作者名别名,若未传 header 则会和时间一起自动组装头部。any-
avatar头像节点或配置对象;可直接传入自定义内容、src、alt 与 bodyClassName。any | ChatAvatarConfig-
avatarSrc / imageSrc头像图片地址别名;不再需要手写 Chat.Image 的内部结构。string-
bubbleClassName仅追加到 chat-bubble 的类名。string-
children提供组合式用法,可继续手写 Chat.Bubble、Chat.Header 等子结构。any-
className追加到当前 chat 根节点;items 模式下会透传给每一项。string-
color消息气泡颜色,会映射到 chat-bubble-* 语义类。'neutral' | 'primary' | 'secondary' | 'accent' | 'info' | 'success' | 'warning' | 'error'-
footer / footerClassName消息脚注与脚注区域类名。any / string-
header / headerClassName整块头部内容与头部区域类名;设置后优先级高于 author 与 timestamp。any / string-
items数据驱动入口,适合渲染完整消息流。ReadonlyArray<ChatDataItem>-
message / text消息正文别名;message 更适合作为推荐写法。any-
placement消息朝向,控制 start 与 end 布局。'start' | 'end''start'
timestamp / headerTime消息时间别名,自动包裹为 time 元素。any-
typing / typingIndicator开启 typing 态,或用自定义节点替换默认 loading dots。boolean / anyfalse / -

ChatDataItem

属性说明类型默认值
key列表项稳定 key;不传时会回退到索引。string | numberindex
placement当前消息方向。'start' | 'end''start'
avatar / avatarSrc / imageSrc支持配置对象、自定义节点和图片地址别名。any-
author / headerName作者名别名。any-
timestamp / headerTime时间别名。any-
message / text消息正文别名。any-
color / bubbleClassName控制单条消息的气泡颜色与气泡类名。BubbleColor / string- / -
footer / footerClassName控制单条消息的脚注及样式。any / string- / -
typing / typingIndicator控制单条消息的 typing 态与自定义指示器。boolean / anyfalse / -
className追加到当前消息根节点。string-

Compound Parts

属性说明类型默认值
Chat.Bubble.color给气泡追加 chat-bubble-* 色彩类。BubbleColor-
Chat.Bubble.typing直接把单个气泡切到 typing 态。booleanfalse
Chat.Header.author / time头部子组件的快捷作者与时间写法。any / any- / -
Chat.Image.src / alt头像子组件的快捷图片写法。string / string- / chat image
Chat.Image.bodyClassName控制默认头像容器,如尺寸、圆角或边框。stringw-10 rounded-full
Chat.Footer.className脚注区域的附加类名。string-
页内导航
页内导航
文档
  • 深度指南
  • 实战例子
  • 快速上手
  • 术语表
  • 错误码参照表
关于
  • 常见问题
  • 团队
  • 版本发布
  • 社区指南
生态
  • 插件
  • 组件库
  • 路由指南
  • Text.js
© 2024-2026 Xiangmin Liu
Rue.JS