单击里面的 md-tab 后,md-menu 关闭
Md-menu closes after clicking md-tab inside
我使用 Angular Material 构建了一个 md-menu
,里面有一个 md-tab-group
2. 在每个 md-tab
上,我显示一个不同的列表。我期望看到的行为是用户能够在选项卡之间切换并且 md-menu
保持打开状态。
问题是 md-menu
每次单击其中一个选项卡时都会关闭。
<img src="/assets/images/ic-notifications.png" [mdMenuTriggerFor]="appMenu"/>
<md-menu #appMenu="mdMenu" [overlapTrigger]="false" yPosition="below" xPosition="before" class="notifications-dropdown">
<md-tab-group >
<md-tab label="My profile" id="personal">
<div class="row notification-row" *ngFor = "let notification of profile_notifications">
...
</div>
</md-tab>
<md-tab label="Favorites " id="favorite-tab" >
...
</md-tab>
</md-tab-group>
</md-menu>
如何防止 md-menu
关闭?
您需要停止鼠标点击传播。你可以这样做:
<md-menu #appMenu="mdMenu" [overlapTrigger]="false" yPosition="below" xPosition="before" class="notifications-dropdown">
<md-tab-group (click)="stopClickPropagate($event)">
<md-tab label="My profile" id="personal"></md-tab>
<md-tab label="Favorites " id="favorite-tab"></md-tab>
</md-tab-group>
</md-menu>
并在您的 component.ts 文件中:
stopClickPropagate(event: any){
event.stopPropagation();
event.preventDefault();
}
Link 到 Plunker Demo.
我使用 Angular Material 构建了一个 md-menu
,里面有一个 md-tab-group
2. 在每个 md-tab
上,我显示一个不同的列表。我期望看到的行为是用户能够在选项卡之间切换并且 md-menu
保持打开状态。
问题是 md-menu
每次单击其中一个选项卡时都会关闭。
<img src="/assets/images/ic-notifications.png" [mdMenuTriggerFor]="appMenu"/>
<md-menu #appMenu="mdMenu" [overlapTrigger]="false" yPosition="below" xPosition="before" class="notifications-dropdown">
<md-tab-group >
<md-tab label="My profile" id="personal">
<div class="row notification-row" *ngFor = "let notification of profile_notifications">
...
</div>
</md-tab>
<md-tab label="Favorites " id="favorite-tab" >
...
</md-tab>
</md-tab-group>
</md-menu>
如何防止 md-menu
关闭?
您需要停止鼠标点击传播。你可以这样做:
<md-menu #appMenu="mdMenu" [overlapTrigger]="false" yPosition="below" xPosition="before" class="notifications-dropdown">
<md-tab-group (click)="stopClickPropagate($event)">
<md-tab label="My profile" id="personal"></md-tab>
<md-tab label="Favorites " id="favorite-tab"></md-tab>
</md-tab-group>
</md-menu>
并在您的 component.ts 文件中:
stopClickPropagate(event: any){
event.stopPropagation();
event.preventDefault();
}
Link 到 Plunker Demo.