Skip to content

Commit 4260a40

Browse files
Wendellvthinkxie
authored andcommitted
fix(module:breadcrumb): fix auto generate not working in lazy modules (#3174)
close #2538
1 parent 15b6724 commit 4260a40

1 file changed

Lines changed: 6 additions & 12 deletions

File tree

components/breadcrumb/nz-breadcrumb.component.ts

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ import {
1212
TemplateRef,
1313
ViewEncapsulation
1414
} from '@angular/core';
15-
import { ActivatedRoute, NavigationEnd, Params, PRIMARY_OUTLET, Router } from '@angular/router';
15+
import { ActivatedRoute, Params, PRIMARY_OUTLET, Router } from '@angular/router';
1616
import { Subject } from 'rxjs';
17-
import { filter, takeUntil } from 'rxjs/operators';
17+
import { takeUntil } from 'rxjs/operators';
1818

1919
export const NZ_ROUTE_DATA_BREADCRUMB = 'breadcrumb';
2020

@@ -60,16 +60,10 @@ export class NzBreadCrumbComponent implements OnInit, OnDestroy {
6060
if (this.nzAutoGenerate) {
6161
try {
6262
const activatedRoute = this.injector.get(ActivatedRoute);
63-
const router = this.injector.get(Router);
64-
router.events
65-
.pipe(
66-
filter(e => e instanceof NavigationEnd),
67-
takeUntil(this.destroy$)
68-
)
69-
.subscribe(() => {
70-
this.breadcrumbs = this.getBreadcrumbs(activatedRoute.root);
71-
this.cd.markForCheck();
72-
});
63+
activatedRoute.url.pipe(takeUntil(this.destroy$)).subscribe(() => {
64+
this.breadcrumbs = this.getBreadcrumbs(activatedRoute.root);
65+
this.cd.markForCheck();
66+
});
7367
} catch (e) {
7468
throw new Error('[NG-ZORRO] You should import RouterModule if you want to use NzAutoGenerate');
7569
}

0 commit comments

Comments
 (0)