说明
面向 AI 对话、智能助手起手的欢迎 / 空态组件,纯展示、不依赖任何浏览器 API。
常见能力:
- 问候主副标题 + 助手头像(文字 / 图片 / 图标任一驱动,ShowAvatar 可强制显隐)
- Prompts 渲染“你可能想问”卡片栅格,Columns 控制列数(0 自适应)
- Refreshable 换一批按钮 + OnRefresh;PromptsTitle / RefreshText 走词条
- OnPrompt 回传点选卡片(Disabled 项不可点),常与 Bubble 衔接会话起手
- Align 居中 / 左对齐两种版式,Loading 显示提示区骨架卡片
- Header 插槽接简介下,ChildContent 插槽置于提示区下(输入框 / 能力标签)
- 纯展示、无 JS 互操作,明暗主题随 CSS 令牌自动适配
用法
<Welcome Align="center" AvatarIcon="sparkles"
Title="你好,我是 Known 助手"
Description="可以帮你搭建模型、生成页面,也能解答框架用法。"
Prompts="@_prompts" Columns="2" Refreshable="true"
OnPrompt="Ask" OnRefresh="Shuffle">
<ChildContent><Input Placeholder="输入你的问题" OnEnter="@Send" /></ChildContent>
</Welcome>
@code {
List<WelcomePrompt> _prompts = new()
{
new("帮我设计一个订单实体", "database") { Description = "字段与校验" },
new("多语言 Local 怎么用", "globe") },
};
void Ask(WelcomePrompt p) => _draft = p.Text; // 送入会话
void Shuffle() { /* 换一批 */ }
}
API 参数
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
Align |
string |
"center" |
对齐方向:center(居中,默认)或 start(左对齐)。 |
Avatar |
string |
null |
助手头像文字缩写(无图片、无图标时显示,作为翻译键)。 |
AvatarIcon |
string |
null |
助手头像图标名(Icon Type,不本地化)。无图片时、且无文字缩写时生效。 |
AvatarSrc |
string |
null |
助手头像图片地址。 |
ChildContent |
RenderFragment |
null |
额外内容插槽(位于提示区之下,如输入框 / 能力标签)。 |
Columns |
int |
2 |
提示卡片栅格列数。默认 2;设为 0 时按容器宽度自适应。 |
Description |
string |
null |
问候副标题 / 简介(作为翻译键)。 |
Header |
RenderFragment |
null |
头部自定义内容(位于简介之下)。 |
Loading |
bool |
false |
加载态:提示区显示骨架卡片。 |
OnPrompt |
EventCallback<WelcomePrompt> |
— | 事件 点击某条提示卡片的回调。 |
OnRefresh |
EventCallback |
— | 事件 “换一批”点击回调。 |
Prompts |
List<WelcomePrompt> |
null |
“你可能想问”提示卡片数据。其中文本视为业务内容、直接展示不本地化。 |
PromptsTitle |
string |
"你可能想问" |
提示区标题(作为翻译键)。留空则不显示标题行。 |
Refreshable |
bool |
false |
是否在提示区右侧显示“换一批”按钮。 |
RefreshText |
string |
"换一批" |
“换一批”按钮文本(作为翻译键)。 |
ShowAvatar |
Nullable<bool> |
null |
是否显示头像。默认根据 Avatar / AvatarSrc / AvatarIcon 任一非空自动判定。 |
Title |
string |
null |
问候主标题(作为翻译键)。 |
Visible |
bool |
true |
取得或设置组件是否可见,默认为false。 |
VisibleChanged |
EventCallback<bool> |
— | 事件 取得或设置组件可见性变化时的回调事件。 |
Class |
string |
null |
取得或设置组件的CSS类名,用于自定义样式。 |
Disabled |
bool |
false |
取得或设置组件是否禁用,默认为false。 |
Style |
string |
null |
取得或设置组件的内联样式,用于自定义样式。 |
所有组件均继承
BaseComponent,除上表参数外还支持Class、Style、Disabled、Visible。
扫码关注公众号
扫码加入 QQ 群