Skip to content

Layout ​

简介 ​

PlusLayout 是由 PlusBreadcrumb , PlusHeader , PlusSidebar 三个组件组合而成,它解决了布局的问题,提供开箱即用的菜单(多级)和面包屑功能。

基础用法 ​

Layout API ​

Layout Attributes ​

名称说明类型默认值是否必须
breadcrumbPropsPlusBreadcrumb 的 propsobject PlusBreadcrumb 否
headerPropsPlusHeader 的 propsobjectPlusHeader 否
sidebarPropsPlusSidebar 的 propsobjectPlusSidebar 否
scrollbarPropsscrollbar 的 propsfalse / objectScrollbarProps {always:true}否
backtopbacktop 的 propsfalse / objectBacktopProps true否
hasSidebarv0.1.15是否需要侧边栏booleantrue否
hasHeaderv0.1.15是否需要页头booleantrue否
hasBreadcrumbv0.1.15是否需要面包屑booleantrue否

提示

子组件事件写法示例

如 PlusSidebar 的事件 toggleCollapse和 PlusHeader 的事件clickDropdownItem。 参考 vue 官方文档 透传 Attributes,如下示例

示例:

模板中

html
<PlusLayout
  :sidebarProps="{ onToggleCollapse: handleToggleCollapse }"
  :headerProps="{ onClickDropdownItem: handleClickDropdownItem}"
/>

setup 中

ts
const handleClickDropdownItem = (dropdownItem: { label: string; value: string }) => {
  console.log(dropdownItem)
}

const handleToggleCollapse = (collapse: boolean) => {
  console.log(collapse)
}

Exposes ​

名称说明类型
plusSidebarInstancePlusSidebar 的实例object

Slots ​

插槽名说明作用域插槽参数
default内容,一般需要给 RouterView 组件,配合路由信息展示页面
layout-extra定义面包屑上方,header 下方的一块区域
breadcrumb-item-title自定义PlusBreadcrumb 面包屑显示route PlusRouteRecordRaw
header-left自定义PlusHeader 头部左侧{logo,title}
header-right自定义PlusHeader 头部右侧{userInfo,title}
sidebar-item自定义 PlusSidebar 菜单的 menuItemroute PlusRouteRecordRaw
sidebar-sub自定义 PlusSidebar 菜单的 subMenuroute PlusRouteRecordRaw
sidebar-item-title自定义 PlusSidebar 菜单每项标题显示route PlusRouteRecordRaw
sidebar-extra自定义 PlusSidebar 在菜单头和菜单之间route PlusRouteRecordRaw