# BubbleList 消息列表组件
# 功能说明
消息列表组件,用于展示一组对话消息,支持以下特性:
- 自动滚动到最新消息
- 返回底部按钮
- 统一设置气泡样式
- 自定义控制滚动
- 自定义头像和内容渲染
# 使用示例
# 基础用法
基本的消息列表组件使用,展示多条消息。
复制代码
# 全局默认配置(可以用在显示历史消息记录的场景,统一设置)
通过 default* 前缀属性统一设置所有气泡的样式,优先级高于 Bubble 组件内的设置。
复制代码
# 打字器效果和自动滚动
展示打字器效果和自动滚动到最新消息的功能。
复制代码
# 返回底部按钮
当滚动到顶部时,显示返回底部按钮。
复制代码
# 自定义插槽
使用插槽自定义气泡的头像和内容。
复制代码
# 加载状态和复杂消息
展示加载状态和不同类型的消息内容。
复制代码
# 属性
| 参数 | 说明 | 类型 | 默认值 |
|---|---|---|---|
| list | 气泡列表数据 | Array | [] |
| maxHeight | 列表最大高度 | String | '500px' |
| triggerIndices | 触发气泡完成事件的索引,可选值:'only-last'/'all'/Array | String/Array | 'only-last' |
| alwaysShowScrollbar | 是否始终显示滚动条 | Boolean | false |
| backButtonThreshold | 显示回到底部按钮的滚动阈值 | Number | 80 |
| showBackButton | 是否显示回到底部按钮 | Boolean | true |
| backButtonPosition | 回到底部按钮位置 | Object | { bottom: '20px', left: 'calc(50% - 19px)' } |
| btnLoading | 按钮是否显示加载动画 | Boolean | true |
| btnColor | 按钮颜色 | String | '#409EFF' |
| btnIconSize | 按钮图标大小 | Number | 24 |
| defaultPlacement | 默认气泡位置,优先级高于气泡组件 | String | '' |
| defaultLoading | 默认加载状态,优先级高于气泡组件 | Boolean | undefined |
| defaultShape | 默认气泡形状,优先级高于气泡组件 | String | '' |
| defaultVariant | 默认气泡样式,优先级高于气泡组件 | String | '' |
| defaultIsMarkdown | 默认是否解析 Markdown,优先级高于气泡组件 | Boolean | true |
| defaultIsFog | 默认是否启用雾化效果,优先级高于气泡组件 | Boolean | false |
| defaultTyping | 默认打字效果配置,优先级高于气泡组件 | Boolean/Object | undefined |
| defaultMaxWidth | 默认气泡最大宽度,优先级高于气泡组件 | String | '' |
| defaultAvatar | 默认头像地址,优先级高于气泡组件 | String | '' |
| defaultAvatarSize | 默认头像尺寸,优先级高于气泡组件 | Number | undefined |
| defaultAvatarGap | 默认头像间距,优先级高于气泡组件 | Number | undefined |
| defaultAvatarShape | 默认头像形状,优先级高于气泡组件 | String | '' |
| defaultAvatarSrcSet | 默认头像 srcset,优先级高于气泡组件 | String | '' |
| defaultAvatarAlt | 默认头像 alt,优先级高于气泡组件 | String | '' |
| defaultAvatarFit | 默认头像填充方式,优先级高于气泡组件 | String | '' |
| defaultNoStyle | 默认是否移除样式,优先级高于气泡组件 | Boolean | undefined |
# 方法
| 方法名 | 说明 | 参数 | 返回值 |
|---|---|---|---|
| scrollToTop | 滚动到顶部 | - | - |
| scrollToBottom | 滚动到底部 | - | - |
| scrollToBubble | 滚动到指定的气泡 | index: 气泡索引 | - |
# 事件
| 事件名 | 说明 | 回调参数 |
|---|---|---|
| complete | 气泡打字完成事件 | (instance: 气泡实例, index: 气泡索引) |
# 插槽
| 插槽名 | 说明 |
|---|---|
| avatar | 自定义头像内容,作用域参数: { item: 气泡数据项 } |
| header | 自定义气泡头部内容,作用域参数: { item: 气泡数据项 } |
| content | 自定义气泡主体内容,作用域参数: { item: 气泡数据项 } |
| footer | 自定义气泡底部内容,作用域参数: { item: 气泡数据项 } |
| loading | 自定义加载状态内容,作用域参数: { item: 气泡数据项 } |
| backToBottom | 自定义返回底部按钮内容 |