组件库

组件库

123 个自研 Blazor 组件的说明、用法与 API 参数;在线示例为交互式,可实时点按。

布局组件 共 9 个组件

整体页面骨架、导航与浮层宿主。

基础组件 共 22 个组件

按钮、标签、卡片、图标等通用元素。

<Icon>

内联 Feather SVG 图标,内置 200 个图形并按分类组织,兼容 Font Awesome 写法,支持自定义注册。

<Button>

多语义、多尺寸按钮,支持加载态、图标与块级展示。

<Card>

带标题栏、扩展区与折叠能力的内容容器。

<Tag>

用于状态与分类的轻量标签,支持图标与可关闭。

<Badge>

数字或小圆点角标。

<StatusDot>

带文字的状态指示;加上计数与点击即成状态过滤器。

<Divider>

水平或垂直分割线,可带居中文字。

<Avatar>

文字、图片或图标头像。

<AvatarGroup>

头像堆叠展示,超出数量折叠为 +N。

<Empty>

无数据时的占位展示。

<Spin>

加载指示器,旋转圆环或三点跳动,可包裹内容显示遮罩。

<Segmented>

少量选项的互斥切换控件。

<Skeleton>

内容加载前的占位骨架。

<Watermark>

在内容上平铺文字水印。

<Collapse>

可展开折叠的内容区块,支持手风琴模式。

<Dropdown>

点击展开的浮层菜单,内置“点击外部自动关闭”。

<Menu>

纵向或横向多级导航菜单。

<PageHeader>

页面标题、描述与操作区。

<Breadcrumb>

层级路径导航。

<BackTop>

滚动超过阈值后在屏幕角落淡入的返回顶部按钮,点击平滑滚回顶部。

<Carousel>

轮播面板:淡入淡出或左右滑动切换,支持自动播放、指示器、箭头切换与悬停暂停。

<Signature>

Canvas 手写签名:鼠标 / 触摸 / 手写笔都能签,支持撤销、清空、笔宽颜色调节与 PNG 导出。

表单组件 共 23 个组件

输入、选择、校验与文件上传。

数据展示 共 17 个组件

表格、分页、图表与描述类展示组件。

<Table>

完整业务表格:固定表头/钉列、横向滚动、虚拟滚动、排序、列头过滤、自定义列头与单元格模板、超宽省略号、合并表头(多级列头)与合并单元格(跨行/跨列)。

<Column>

写在 Table 内部的列声明:列属性用标记给,单元格模板直接把 Razor 写在列里,context 就是当前行的强类型实体。

<Pagination>

独立分页器,可与表格配合或单独使用。

<Chart>

ECharts 封装,传入原生 option 对象即可渲染。

<Statistic>

指标数值卡片,支持前缀后缀、趋势与图标。

<Descriptions>

键值信息展示,用于详情页。

<ItemList>

头像 + 标题 + 描述的纵向列表,支持点击与右侧操作。

<Progress>

线性与环形进度,支持语义色与自定义颜色。

<Steps>

多步骤流程指示,支持横向与纵向。

<Tabs>

内容分区切换,支持角标与卡片样式。

<Timeline>

按时间顺序展示事件流。

<Tree>

层级数据展示,支持展开、选中与禁用。

<ModelViewer>

glTF / GLB / OBJ 三维模型查看器:拖拽轨道旋转、滚轮缩放、线框与快照。

<MindMap>

层级数据可视化:把树形结构渲染为可交互的脑图,支持展开收起、拖拽缩放与导出 PNG。

<Map>

交互式地图:基于 Leaflet.js,支持标记点、弹窗、图层切换与缩放控制。

<Gantt>

甘特图:把一组带起止日期的任务渲染成可拖拽的甘特条,支持按日 / 周 / 月 / 年切换视图。

<Calendar>

完整月份日历,卡片与全屏两种形态,全屏可内联增删待办。

反馈组件 共 8 个组件

模态、抽屉、提示与通知等即时反馈。

媒体组件 共 12 个组件

图片、视频、音频播放、语音输入、条码 / 二维码 / 扫码、监控视频直播 / 多路宫格墙与 iframe 内嵌类组件。

设备组件 共 6 个组件

终端与硬件设备类组件,如 Web 蓝牙 BLE、Web 串口、WebUSB、Web NFC 标签读写、WebHID 通信、Web MIDI 通信。

页面组件 共 10 个组件

结果页与错误页等整页级组件。

AI组件 共 16 个组件

智能对话、生成与辅助类组件,如对话气泡 Bubble、会话管理 Conversations、欢迎引导 Welcome、快捷提示 Prompts、思考过程 Think、思维链 ThoughtChain、输入附件 Attachments、输入框 Sender、快捷指令 Suggestion、操作列表 Actions、代码高亮 CodeHighlighter、文件卡片 FileCard、文件夹 Folder、Mermaid 图表、来源引用 Sources。

<Bubble>

纯展示型对话气泡:左右方位、多种底色,可带头像 / 名称 / 时间、Header / Footer 插槽与富内容,并内建“正在输入”与“加载中”状态。

<Conversations>

以一列可分组的会话线程管理 AI 对话 / 客服会话:选中、新建、重命名、置顶、删除,支持整表与单条加载态、未读点与空态。

<Welcome>

AI 助手 / 对话入口的欢迎页:问候主副标题与助手头像,下方“你可能想问”提示卡片栅格,支持换一批、加载骨架与居中/左对齐,点卡片经 OnPrompt 把提问交给宿主。

<Prompts>

一列可点选的 AI 快捷提示卡片:图标 + 标题 + 描述,支持子提示(父项下方的紧凑标签)、列数栅格、禁用、加载骨架与空态,点选经 OnPrompt 回传命中项。

<Think>

折叠式的 AI 推理 / 深度思考面板:思考中脉冲并自动展开,结束自动收起并显示耗时;正文支持文本或富内容,展开收起为纯 CSS 动画。

<ThoughtChain>

以竖向时间线呈现智能体多步推理链:每个环节带状态节点(等待 / 进行中 / 完成 / 失败,进行中图标自动旋转)、标题、说明与可折叠正文,节点间有连接线。

<Attachments>

会话输入框上方待发送文件的附件条:卡片 / 胶囊两态,按类型自动选图标与格式化大小,支持上传进度、失败红态、移除与预览回调,纯展示无 JS。

<Sender>

AI 会话底部的消息输入条:自适应高度文本域 + 发送 / 停止按钮,Enter 发送 / Shift+Enter 换行、空内容禁用、Loading 变红色停止,Header 可挂 Attachments、Prefix 放工具、Footer 放提示。

<Suggestion>

随输入过滤的 / 快捷指令建议菜单:图标 + 标题 + 说明 + 快捷键徽标,支持分组、禁用项、加载骨架与空态;ActiveKey 可 @bind 由宿主键盘上下键驱动高亮,选中经 OnSelect 回传,常与 Sender 组合成命令面板。

<Actions>

AI 消息下方的一排轻量图标操作栏:不传 Items 即用内置默认(复制 / 重新生成 / 朗读 / 点赞),或自定义 ActionItem;支持激活态、禁用、加载转圈与 ShowLabel 文字标签,点击经 OnAction 回传、由宿主翻转状态(受控展示),常挂在 Bubble 的 Footer。

<CodeHighlighter>

以带语法配色的代码块呈现 AI 生成 / 引用的源码:内置纯托管分词器(关键字 / 字符串 / 注释 / 数字着色,覆盖 C# / JS / TS / Java / Python / Go / SQL / JSON / Shell,未知语言安全退化),头部栏带语言标签 / 文件名 / 复制按钮,支持行号、软换行与最大高度滚动;组件无 JS,剪贴板写入交宿主。

<FileCard>

以较大的配色缩略瓦片呈现一批文件:按扩展名 / MIME 自动选图标与主题色(图片 / 视频 / 音频 / PDF / Word / Excel / PPT / 压缩包 / 代码 / 文本 / 字体 / 安装包 / 数据库各有配色),右下角自动大写扩展名角标,图片可显示缩略图,下方标注文件名与大小。Size 三档、Variant 实心 / 描边、OnPreview 点击预览;纯展示、无 JS 互操作。

<Folder>

以可展开 / 收起的层级树呈现目录与文件:目录用 folder / folder-open 图标、文件按扩展名复用 FileCard 的分类配色与图标表自动着色,点目录展开 / 收起(OnExpand)、点文件选中(OnSelect,可 @bind-SelectedKey 双向绑定)。Selectable / ShowIcon / ShowSize / DefaultExpandAll 开关,逐节点 Disabled 与空态文案;递归渲染、纯展示、无 JS 互操作。

<Mermaid>

把 Mermaid 文本渲染成 SVG 图示(流程图 / 时序图 / 类图 / 甘特图 / 状态图 等),常用于承载 AI 模型生成的结构化图。渲染由框架内置 known.mermaid 脚本完成、首次使用惰性加载 mermaid(宿主注入 window.mermaid 则复用,否则按 Source 动态 import,默认 jsDelivr ESM、可自托管离线);主题默认跟随框架明暗(可用 Theme 覆盖),Code 或主题变化自动重绘,含加载 / 失败 / 空态。

<Sources>

把 AI 回答所依据的参考来源(网页 / 论文 / 文档 / 新闻 / 代码库 / 数据集 等)渲染成带序号、站点图标、域名 / 作者 / 时间元信息与可选摘录的引用列表,常用于承载 RAG 检索问答的出处。Variant 支持整行列表与紧凑标签两态;据 Type 自动配色配图标,可 Favicon / Icon / Color 逐项覆盖;点来源经 OnSelect 回传、点标题在有 Url 时新窗口打开(rel 采用 noopener)。纯展示、无 JS 互操作;来源标题 / 网址 / 域名 / 摘录视为业务数据不本地化,仅内置标题与空态文案走词条。

<AgentCards>

把智能体一轮回答里查到的东西画进气泡:一张卡 = 标题头 + 字段网格 + 标签行,数据来自 IAgentService 交回的 AgentReply.Cards(AgentCard / AgentCardField 纯 DTO)。刻意不做按钮与链接,卡片只读;三样全空的卡片收成一句「(无结果)」。

微信公众号二维码 扫码关注公众号
QQ 交流群二维码 扫码加入 QQ 群