diff --git a/components/menu/demo/inline.ts b/components/menu/demo/inline.ts
index 78e7f70336e..79995c2b94a 100644
--- a/components/menu/demo/inline.ts
+++ b/components/menu/demo/inline.ts
@@ -33,6 +33,13 @@ import { Component } from '@angular/core';
- Option 7
- Option 8
+ -
+ Submenu
+
+
@@ -40,9 +47,9 @@ import { Component } from '@angular/core';
Navigation Three
- - Option 9
- - Option 10
- Option 11
+ - Option 12
+ - Option 13
diff --git a/components/menu/nz-submenu.component.ts b/components/menu/nz-submenu.component.ts
index 76d43058ed4..dd99f6ff27f 100644
--- a/components/menu/nz-submenu.component.ts
+++ b/components/menu/nz-submenu.component.ts
@@ -1,7 +1,6 @@
import { animate, state, style, transition, trigger } from '@angular/animations';
import { CdkConnectedOverlay, ConnectedOverlayPositionChange, ConnectionPositionPair } from '@angular/cdk/overlay';
import {
- AfterContentInit,
ChangeDetectorRef,
Component,
ContentChildren,
@@ -89,7 +88,7 @@ import { NzMenuDirective } from './nz-menu.directive';
]
})
-export class NzSubMenuComponent implements OnInit, OnDestroy, AfterContentInit {
+export class NzSubMenuComponent implements OnInit, OnDestroy {
private _open = false;
private _disabled = false;
private $mouseSubject = new Subject();
@@ -302,23 +301,16 @@ export class NzSubMenuComponent implements OnInit, OnDestroy, AfterContentInit {
}
ngOnInit(): void {
+ if (this.nzSubMenuComponent) {
+ this.level = this.nzSubMenuComponent.level + 1;
+ this.isInSubMenu = true;
+ }
this.nzMenuDirective.subMenus.push(this);
const $combineAll = combineLatest(this.$subOpen, this.$mouseSubject.asObservable()).pipe(map(value => value[ 0 ] || value[ 1 ]), auditTime(150));
$combineAll.pipe(takeUntil(this.unsubscribe$)).subscribe(this.handleOpenEvent);
this.isInDropDown = this.nzMenuDirective.nzInDropDown;
}
- ngAfterContentInit(): void {
- if (this.subMenus && this.subMenus.length) {
- this.subMenus.filter(x => x !== this).forEach(menu => {
- if (this.subMenuMode === 'inline') {
- Promise.resolve().then(() => menu.level = this.level + 1);
- }
- menu.isInSubMenu = true;
- });
- }
- }
-
ngOnDestroy(): void {
this.unsubscribe$.next();
this.unsubscribe$.complete();