2017-05-24 94 views
1

如何在打开compnent时从ngboostrap打开工具提示。打开工具提示开始

我尝试在ngOnInit函数中调用open方法,但它没有显示它。

我想在一个按钮同样的方法点击的是(基于样本:https://ng-bootstrap.github.io/app/components/tooltip/demos/tplwithcontext/plnkr.html)工作

代码:

export class TooltipComponent implements OnInit { 
    @ViewChild('tleft') public tooltip: NgbTooltip; 

    ngOnInit() { 
     this.tooltip.open(); 
    } 
} 

模板:

<p> 
    <strong ngbTooltip="Tooltip on left" #tleft="ngbTooltip" triggers="manual">Tooltip is here</strong>? 
</p> 
<button type="button" class="btn btn-secondary" (click)="open()"> 
    Open 
</button> 
+0

尝试从'ngAfterViewInit'勾调用的DOM可能没有准备好'ngOnInit' –

+0

@Maximus我想你应该因为它看起来像正确的解决方案 – yurzui

+0

写的答案@马克西姆斯是的,当你把它写成答案时,我接受它。谢谢 – Stefan

回答

1

你应该在ngAfterViewInit钩子内调用this.tooltip.open();,而不是ngOnInit。 DOM可能没有准备好在ngOnInit。所以,解决的办法是:

ngAfterViewInit() { 
    this.tooltip.open(); 
}