在绝大部分情况下,antd的tooltip都表现的很好,十分好用,但是在一些tooltip在需要跳转到其他页面的按钮上的时候,跳转以后tooltip也会有持续存在,不消失的问题,所以这时候就需要能够在点击的时候主动关闭tooltip
不啰嗦,直接上代码:
//html
<button nz-button nzType="default" nzDanger style="margin: 5px;"
#toolTip="nzTooltip" nzTooltipTitle="测试" nz-tooltip
(click)="testBtn()">测试用</button>
//ts
@ViewChild('toolTip',{static:false}) toolTip!:NzTooltipBaseDirective;
testBtn(){
this.toolTip.hide();
}
要注意的点就是:html
中绑定的对象需要为nzTooltip
,注意大小写。ts
中static
要么不写,要么为false
,一旦写了true
那就会报toolTip
未定义的问题。
效果如下,红色的是配置了点击关闭的操作
多提一嘴,如果在angular
使用ngfor
批量生成的tooltip
,如果按照上面写的@viewChild
进行关闭操作的话,就只有第一个会触发关闭,这时候需要将代码改为@ViewChildren('toolTip') toolTip!:QueryList<NzTooltipBaseDirective>
同时ts
中修改按钮操作为this.toolTip.forEach(item=>{item.hide()})
完。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。