问题可能是由于重定向到另一个页面后,Angular Material的matTooltip仍然保留在DOM中,导致没有消失。为了解决这个问题,您可以使用Angular的Router模块来监听路由变化,并在路由变化时手动关闭matTooltip。
以下是一个示例代码,展示了如何使用Router模块来关闭matTooltip:
import { Router, NavigationStart } from '@angular/router';
constructor(private router: Router) { }
ngOnInit() {
this.router.events.subscribe(event => {
if (event instanceof NavigationStart) {
// 关闭matTooltip
const tooltips = document.querySelectorAll('.mat-tooltip');
tooltips.forEach(tooltip => {
tooltip.remove();
});
}
});
}
请注意,我们在这个示例中使用了原生的JavaScript方法querySelectorAll
和remove
来关闭matTooltip。您也可以使用Angular Material提供的方法来关闭matTooltip,取决于您的具体需求。
这样,当您重定向到另一个页面时,matTooltip将被手动关闭,并且不会保留在DOM中。