Breadcrumb面包屑

显示当前页面在系统层级结构中的位置,并能向上返回。

何时使用

  • 当系统拥有超过两级以上的层级结构时;
  • 当需要告知用户『你在哪里』时;
  • 当需要向上导航的功能时。

代码演示

Breadcrumb面包屑 - 图1

基本

最简单的用法。

  1. import { Component } from '@angular/core';
  2. @Component({
  3. selector: 'nz-demo-breadcrumb-basic',
  4. template: `
  5. <nz-breadcrumb>
  6. <nz-breadcrumb-item>
  7. Home
  8. </nz-breadcrumb-item>
  9. <nz-breadcrumb-item>
  10. <a>Application List</a>
  11. </nz-breadcrumb-item>
  12. <nz-breadcrumb-item>
  13. An Application
  14. </nz-breadcrumb-item>
  15. </nz-breadcrumb>
  16. `,
  17. styles: []
  18. })
  19. export class NzDemoBreadcrumbBasicComponent {}

Breadcrumb面包屑 - 图2

路由

RouterLink 进行结合使用。

  1. import { Component } from '@angular/core';
  2. @Component({
  3. selector: 'nz-demo-breadcrumb-router',
  4. template: `
  5. <nz-breadcrumb>
  6. <nz-breadcrumb-item>
  7. <a [routerLink]="['../../']">Home</a>
  8. </nz-breadcrumb-item>
  9. <nz-breadcrumb-item>
  10. Breadcrumb
  11. </nz-breadcrumb-item>
  12. </nz-breadcrumb>
  13. `,
  14. styles: []
  15. })
  16. export class NzDemoBreadcrumbRouterComponent {}

Breadcrumb面包屑 - 图3

分隔符

使用 nzSeparator 可以自定义分隔符。

  1. import { Component } from '@angular/core';
  2. @Component({
  3. selector: 'nz-demo-breadcrumb-separator',
  4. template: `
  5. <h4>String</h4>
  6. <nz-breadcrumb nzSeparator=">">
  7. <nz-breadcrumb-item>
  8. Home
  9. </nz-breadcrumb-item>
  10. <nz-breadcrumb-item>
  11. <a>Application List</a>
  12. </nz-breadcrumb-item>
  13. <nz-breadcrumb-item>
  14. An Application
  15. </nz-breadcrumb-item>
  16. </nz-breadcrumb>
  17. <br />
  18. <h4>TemplateRef</h4>
  19. <nz-breadcrumb [nzSeparator]="iconTemplate">
  20. <nz-breadcrumb-item>
  21. Home
  22. </nz-breadcrumb-item>
  23. <nz-breadcrumb-item>
  24. <a>Application List</a>
  25. </nz-breadcrumb-item>
  26. <nz-breadcrumb-item>
  27. An Application
  28. </nz-breadcrumb-item>
  29. </nz-breadcrumb>
  30. <ng-template #iconTemplate><i nz-icon type="arrow-right"></i></ng-template>
  31. `,
  32. styles: [
  33. `
  34. h4:first-child {
  35. margin-top: 0;
  36. }
  37. h4 {
  38. margin: 16px 0;
  39. font-size: 14px;
  40. line-height: 1;
  41. font-weight: normal;
  42. }
  43. `
  44. ]
  45. })
  46. export class NzDemoBreadcrumbSeparatorComponent {}

Breadcrumb面包屑 - 图4

带有图标的

图标放在文字前面。

  1. import { Component } from '@angular/core';
  2. @Component({
  3. selector: 'nz-demo-breadcrumb-withIcon',
  4. template: `
  5. <nz-breadcrumb>
  6. <nz-breadcrumb-item>
  7. <i nz-icon type="home"></i>
  8. </nz-breadcrumb-item>
  9. <nz-breadcrumb-item>
  10. <a><i nz-icon type="user"></i><span>Application List</span></a>
  11. </nz-breadcrumb-item>
  12. <nz-breadcrumb-item>
  13. Application
  14. </nz-breadcrumb-item>
  15. </nz-breadcrumb>
  16. `,
  17. styles: []
  18. })
  19. export class NzDemoBreadcrumbWithIconComponent {}

Breadcrumb面包屑 - 图5

自动生成

通过配置 router.data 自动生成面包屑。

  1. import { Component } from '@angular/core';
  2. @Component({
  3. selector: 'nz-demo-breadcrumb-auto',
  4. template: `
  5. <nz-breadcrumb [nzAutoGenerate]="true">
  6. Please refer to StackBlitz demo.
  7. </nz-breadcrumb>
  8. `
  9. })
  10. export class NzDemoBreadcrumbAutoComponent {}

API

单独引入此组件

想要了解更多关于单独引入组件的内容,可以在快速上手页面进行查看。

  1. import { NzBreadCrumbModule } from 'ng-zorro-antd';

nz-breadcrumbcomponent

参数说明类型默认值
[nzSeparator]分隔符自定义string|TemplateRef<void>'/'
[nzAutoGenerate]自动生成 Breadcrumbbooleanfalse

使用 [nzAutoGenerate] 时,需要在路由类中定义 data:

  1. {
  2. path: '/path',
  3. component: SomeComponent,
  4. data: {
  5. breadcrumb: 'Display Name'
  6. }
  7. }