跳至主要內容

面包屑 (Breadcrumb)

Mr.Hope大约 2 分钟

面包屑 (Breadcrumb)

面包屑导航功能允许用户在应用中跟踪其导航路径。默认使用 BreadcrumbWidget 作为该功能的基类。

参数

  • router: 非响应式变量,表示应用的路由对象。
  • matched: 非响应式变量,表示当前路由匹配的信息。
  • moduleName: 响应式变量,表示当前模块名称。
  • menuNodes: 响应式变量,表示当前模块的菜单节点树状结构,默认为空数组。
  • currentViewTitle: 响应式变量,表示当前视图的标题。
  • items: 响应式变量,表示当前选中菜单的平铺结构(父到子),默认为空数组。
  • enabledHomepage: 响应式变量,表示是否开启首页,默认为true

方法

executeAction()

  • 类型: 响应式方法
  • 描述: 执行视图动作。
  • 入参:
    • action (RuntimeViewAction): 当前需要执行的视图动作。
@Widget.Method()
public executeAction(action: RuntimeViewAction) {}

onHomepage()

  • 类型: 响应式方法
  • 描述: 跳转到首页。
@Widget.Method()
public async onHomepage() {}

onModuleChange()

  • 类型: 非响应式方法
  • 描述: 模块发生改变时调用,重新获取模块名和菜单节点数树。
  • 入参:
    • moduleName (string): 模块名称。
protected async onModuleChange(moduleName: string) {}

fetchMenuNodes()

  • 类型: 非响应式方法
  • 描述: 根据模块名称获取菜单节点树状结构。
  • 入参:
    • moduleName (string): 模块名称。
  • 返回值:
    • Promise<TreeNode<RuntimeMenu>[]>: 菜单节点树状结构。
protected async fetchMenuNodes(moduleName: string): Promise<TreeNode<RuntimeMenu>[]> {}

refreshItems()

  • 类型: 非响应式方法
  • 描述: 刷新当前面包屑导航项。
  • 入参:
    • model (string): 当前模型。
    • action (string): 当前视图动作。
    • parameters (MenuUrlParameters | undefined): 当前菜单的参数。
protected async refreshItems(model: string, action: string, parameters: MenuUrlParameters | undefined): Promise<void> {}

refreshViewTitle()

  • 类型: 非响应式方法
  • 描述: 刷新当前视图标题。
  • 入参:
    • model (string): 当前模型。
    • action (string): 当前视图操作。
protected async refreshViewTitle(model: string, action: string): Promise<void> {}

reloadMaskProcess()

  • 类型: 非响应式方法
  • 描述: 重新加载面包屑导航信息,刷新模块、当前面包屑导航项、当前试图标题。
  • 入参:
    • reloadParameters (ReloadMaskCallChainingParameters): 重新加载mask的参数。
protected async reloadMaskProcess(reloadParameters: ReloadMaskCallChainingParameters) {}

如何替换

import { BreadcrumbWidget, SPI, MaskWidget } from "@kunlun/dependencies";

@SPI.ClassFactory(MaskWidget.Token({ dslNodeType: "breadcrumb" }))
export class CustomBreadcrumb extends BreadcrumbWidget {}