You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular中matTooltip未获取函数原始返回值问题咨询

问题原因与解决方案

原因分析

你遇到的问题核心是matTooltip绑定的是经过slice截取后的值,而非getFieldName(element)的原始返回值。从你给出的代码片段推测,你在设置tooltip内容时,错误地复用了和label显示文本一样的截取表达式,导致hover时只能看到截取值。

修正方案

直接将matTooltip绑定到getFieldName(element)的原始返回值,同时保持label内的文本为截取后的结果即可。以下是修正后的完整代码示例:

<!-- 字段长度超过39时,显示截取值,hover显示原始完整值 -->
<label class="icon-label" 
       *ngIf="getFieldName(element).length > 39"
       [matTooltip]="getFieldName(element)">
  {{ getFieldName(element).slice(0, 36) }}...
</label>

<!-- 字段长度小于等于39时,显示完整值(可按需决定是否保留tooltip) -->
<label class="icon-label" 
       *ngIf="getFieldName(element).length <= 39">
  {{ getFieldName(element) }}
</label>

说明

  • [matTooltip]="getFieldName(element)" 直接绑定原始返回值,确保hover时显示完整内容
  • label内的{{ getFieldName(element).slice(0, 36) }}... 负责显示截取后的短文本
  • 短文本场景下如果不需要tooltip,直接去掉对应的[matTooltip]属性即可

内容的提问来源于stack exchange,提问作者Dinesh B

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 22:07:13