Как показать подсказку углового материала при инициализации компонента - PullRequest
0 голосов
/ 29 января 2019

Я хочу показать подсказку Angular Material, когда его компонент инициализирован / загружен.

Я знаю, что могу добавить атрибут HTML, чтобы показать его, когда происходит событие.Моя общая цель - показать всплывающую подсказку при загрузке компонента, а затем скрыться через несколько секунд.

Я пробовал следующее:

<div (load)="tooltip.show()"
     #tooltip="matTooltip"
     matTooltip="blah blah">
</div>

Ответы [ 2 ]

0 голосов
/ 29 января 2019

YoukouleleY почти правильно, вам нужно поместить его в ngAfterViewInit () и добавить setTimeout () , чтобы заставить его работать:

@ViewChild('tooltip') tooltip: MatTooltip;

constructor(private cd: ChangeDetectorRef) { }

ngAfterViewInit() {
   this.tooltip.show();
   this.cd.detectChanges();
   setTimeout(() => this.tooltip.hide(2000));
}

Добавлено обновление с changeDetectorRef, чтобы избежать ExpressionChangedAfterItHasBeenCheckedError.Надеюсь, это поможет.

0 голосов
/ 29 января 2019

Попробуйте это:

@ViewChild('tooltip') tooltip: MatToolTip;

ngOnInit() {
  this.tooltip.show();
  this.tooltip.hide(2000);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...