说明
作为 Layout 使用即可得到标准后台框架。通过 Menus 配置导航,侧栏顶部为 Logo 与折叠开关,导航树下方可含「开发中心」分组(由 Config.AddKnown 预声明,页面以 [Menu(Group = "development")] 挂入);顶栏右侧聚合搜索、自定义功能、刷新/全屏、通知与头像下拉(身份 + 主题/语言/密度/主题色/布局/导航偏好),用户身份不再放在侧栏底部。顶栏标题默认取当前页在菜单树中的名称(无需逐页传 PageTitle,开发中心页同属菜单树,一并自动推导),并自动在其左侧渲染上级面包屑;右上角刷新按钮对当前页做软刷新(重建页面组件、重新取数,不重载浏览器)。与 RailLayout 是 Config.Shells 出厂内置的两个候选:想让最终用户自己换外壳,把路由默认布局指向 ShellLayout 而不是这里,本模板只作为没选过偏好时的落点。
常见能力:
- 多级侧边栏导航与折叠
- 声明式分组:Config.AddMenuGroup + [Menu].Group
- 顶栏右侧搜索 + 头像下拉偏好设置
- 标题从菜单自动推导 + 上级面包屑
- 刷新按钮软刷新当前页
- Ctrl+K 命令面板
- 滚动到顶按钮
- 与 RailLayout 同为可切换外壳(Config.Shells)
用法
<Router AppAssembly="@typeof(Program).Assembly">
<Found Context="routeData">
<RouteView RouteData="@routeData" DefaultLayout="@typeof(AdminLayout)" />
</Found>
</Router>
API 参数
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
Body |
RenderFragment |
null |
|
Collapsed |
bool |
false |
默认折叠侧边栏。 |
HomeTitle |
string |
"首页" |
首页页签标题。 |
HomeUrl |
string |
"/" |
首页地址:多页签模式下钉在首位、不可关闭的那一签,也是品牌位点击的去向。 须与宿主的首页路由一致,否则首页会被当成普通页签另开一个。 |
Languages |
List<LanguageOption> |
[] |
语言选项。留空时由顶栏从语言管理服务自取“用户启用的语言”;显式传入则覆盖。 |
Logo |
string |
"K" |
Logo 文字。 |
LogoIcon |
string |
null |
Logo 图标,设置后覆盖 Logo。 |
LogoUrl |
string |
"_content/Known/img/logo.svg" |
Logo 图片地址,优先级最高(覆盖 LogoIcon 与 Logo)。默认取框架品牌图标;置空则回退文字/图标。 |
Menus |
List<MenuItem> |
[] |
导航菜单。留空时由登录门禁装配([Menu] 扫描 + 模块登记表),显式传入则以其为准。 |
Notifications |
List<NotifyItem> |
[] |
顶栏通知。 |
NotifyFooter |
string |
"查看全部通知" |
通知面板底部文字,为空则不显示。 |
OnLogout |
EventCallback |
— | 事件 |
PageTitle |
string |
null |
顶栏页面标题。留空时自动取当前页在菜单中的名称(模板布局为默认布局,页面无法逐页传参,故从菜单树推导,避免标题空白)。 |
ProfileUrl |
string |
"/profile" |
「个人中心」入口地址(顶栏头像下拉里的条目跳转)。默认指向 Known.Admin 的自助页;宿主无该页可置空以隐藏条目,或改成自己的路由。 |
ScrollId |
string |
"known-content" |
内容滚动容器的 DOM id。 |
Searchable |
bool |
true |
是否显示全局搜索。 |
SiteTitle |
string |
null |
站点标题。留空(默认)时由「系统设置 · 系统名称」驱动;宿主显式传入则以其为准。 |
UserName |
string |
"Admin" |
用户名。 |
UserRole |
string |
"超级管理员" |
用户角色。 |
所有组件均继承
BaseComponent,除上表参数外还支持Class、Style、Disabled、Visible。
扫码关注公众号
扫码加入 QQ 群