Skip to content

Data Viewer 数据查看器

基于 BrConfigProvider 实现全局主题配置,支持多视图切换、筛选、导出的企业级数据查看组件,可无缝集成 BrTableBrCard

组件特性

  • 🔄 多视图切换:支持表格、卡片、JSON、树形结构的快速切换。
  • 数据高亮:轻松高亮数据中的重要关键字。
  • 📑 内置分页:集成客户端分页功能,并完美支持搜索过滤联动。
  • 🎨 主题定制:基于 BrConfigProvider 支持全局主题定制。

基础用法与多视图切换

支持表格、卡片、JSON、树形结构的快速切换。

ID
Full Name
Email Address
Role
Status
1Alice Smithalice@example.comAdminActive
2Bob Jonesbob@example.comUserInactive
Example

卡片视图与数据高亮

通过 default-view="card" 设置默认视图为卡片,结合 highlight-keywords 实现关键字高亮。

Item 1

ID1
Full NameAlice Smith
Email Addressalice@example.com
RoleAdmin
StatusActive

Item 2

ID2
Full NameBob Jones
Email Addressbob@example.com
RoleUser
StatusInactive
Example

主题定制与全局配置

展示如何通过 BrConfigProvider 全局配置组件样式。

ID
Full Name
Email Address
Role
Status
1Alice Smithalice@example.comAdminActive
2Bob Jonesbob@example.comUserInactive
Example

分页功能

通过设置 :pagination="true" 开启内置的客户端自动分页,或者传入对象实现完全受控的分页。

Built-in Client Pagination

Set :pagination="true" to enable automatic client-side pagination.

ID
Full Name
Email Address
Role
Status
1User 1user1@example.comAdminInactive
2User 2user2@example.comUserActive
3User 3user3@example.comEditorActive
4User 4user4@example.comAdminActive
5User 5user5@example.comEditorInactive
6User 6user6@example.comUserPending
7User 7user7@example.comAdminActive
8User 8user8@example.comUserActive
9User 9user9@example.comEditorInactive
10User 10user10@example.comAdminActive
Example

API 参考

BrDataViewer

参数类型默认值说明
dataany[][]绑定的数据源
columnsBrDataViewerColumn[][]列配置
defaultView'table' | 'json' | 'tree' | 'card''table'默认视图类型
allowedViewsDataViewType[]['table', 'json', 'tree', 'card']允许切换的视图列表
loadingbooleanfalse是否处于加载状态
errorstring | Error | nullnull错误信息
emptyTextstring'No data'空数据提示
heightstring | number-容器高度
paginationBrDataViewerPagination | booleanfalse分页配置。传入 true 则使用内置的客户端分页,或传入配置对象以完全受控。
highlightKeywordsstring[][]需要高亮的关键字

BrDataViewerColumn

参数类型默认值说明
keystring-列键值
titlestring-列标题
widthstring | number-列宽
render(row: any, index: number) => any-自定义渲染函数
hiddenbooleanfalse是否隐藏该列

事件

事件名参数说明
update:pagination(pagination: BrDataViewerPagination)分页改变时触发
view-change(view: string)视图切换时触发