在Angular2中使用Bootstrap - 工具提示,工具提示需要通过执行javascript来设置,怎么做?

时间:2016-07-04 15:55:19

标签: javascript twitter-bootstrap angular

Angular2(2.0.0-rc.4) 我使用Bootstrap的工具提示,工具提示需要在准备好时执行跟随javascript:

$(function () {
  $('[data-toggle="tooltip"]').tooltip()
})

在Angular2中,如何执行它?

2 个答案:

答案 0 :(得分:1)

<div data-toggle="tooltip" #tooltip></div>
class MyComponent {
  @ViewChild('tooltip') tooltip:ElementRef;

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

答案 1 :(得分:1)

这对我有用:

import { Directive, ElementRef, AfterViewInit, Input, HostListener } from '@angular/core';

declare var $: any;

@Directive({
  selector: '[appTooltip]'
})
export class TooltipDirective implements OnDestroy {


  @Input()
  public appTooltip: string;

  constructor(private elementRef: ElementRef) { }

  @HostListener('mouseenter')
  public onMouseEnter(): void {
    const nativeElement = this.elementRef.nativeElement;
    $(nativeElement).tooltip('show');
  }

  @HostListener('mouseleave')
  public onMouseLeave(): void {
    const nativeElement = this.elementRef.nativeElement;
    $(nativeElement).tooltip('dispose');
  }


ngOnDestroy(): void {
    const nativeElement = this.elementRef.nativeElement;
    $(nativeElement).tooltip('dispose');
  }

}

登记:

  1. 在app.module.ts
  2. 中导入
  3. 在@NgModule(文件app.module.ts)
  4. 的声明中添加它

    并像这样使用它:

    <button title="tooltip tilte" [appTooltip]></button>