【发布时间】:2018-05-29 23:53:00
【问题描述】:
我遇到了一种奇怪的行为 - 尽管它可能按预期工作(这就是我没有立即提交错误的原因)或者我在不应该使用 mat-menu-item-directive 的地方?
当我有一个打开一个菜单的按钮时,该菜单又包含一个带有 mat-menu-item 指令的按钮,它的工具提示似乎奇怪地放错了位置。
使用mat-button-directive 似乎可以解决问题,但按钮行为不一样。
StackBlitz: https://stackblitz.com/edit/angular-inhkax
如果您单击配置文件,您会看到“编辑配置文件”工具提示似乎出现在刚刚打开菜单的按钮上,即使该工具提示属于第二个按钮(三个按钮中的三个)菜单。
它始终是第一个嵌套按钮具有mat-menu-item-directive 的工具提示,它显示在调用者按钮(在本例中为“配置文件”)上,因此出现在错误的位置。
它会导致此工具提示“挂起”,直到将鼠标悬停在此特定嵌套按钮上,使放错位置的工具提示消失,并导致相同的工具提示出现在正确的指定(或默认)位置。
您可以在 StackBlitz-link 中找到这些包及其版本。
【问题讨论】:
-
你为什么不直接使用属性
matTooltipPosition。所以,在你的情况下,我会使用rightmatTooltipPosition="right"。我一直在用你的代码测试它,它工作正常。 -
@k.vincent :你是什么意思?我希望“配置文件”按钮不显示任何工具提示,而其他工具提示应该以默认设置显示,即
matTooltipPosition="below"。我为什么要换位置,为什么还要换? -
好的,我知道工具提示与下一个导航菜单重叠,实际上就是这种情况,这就是您要防止的。但无论如何,我会在正确或之后添加位置,因为现在的方式,这真的是一个糟糕的用户体验。 1. 不好看, 2. 让用户感到困惑。另一方面,我不介意你保留它。这是你的问题!
-
@k.vincent:你是对的。我不想让它在我的 StackBlitz 中看起来像“破碎”,这就是为什么我想知道我是否做错了什么(例如使用错误的指令或其他东西),但显然(根据 Faisal,回答如下)似乎就像一个错误,他还提供了一个解决方法。
标签: angular angular-material angular-material2 angular6