1

我正在使用 angular 2 bootstrap 4 模块。

我想显示一个带有是和否按钮的弹出框元素来删除某些内容。

当我单击否按钮时,弹出窗口应该关闭。

这不会发生,而是弹出窗口会稍微重新定位,就好像它会被重新初始化一样......

我不知道发生了什么。

任何人都可以帮忙吗?

<button[ngbPopover]="popContent" popoverTitle="You really wanna delete this item?">Delete</button>

<template #popContent>
    <div class="btn-group">
        <button (click)="delete(s.id)">Yes</button>
        <button (click)="popContent.close()">No</button>
    </div>
</template>
4

1 回答 1

4

您必须在元素上指定具有值的triggers属性,这将使弹出窗口在手动事件上打开。默认情况下,触发器设置为.manualpopoverclick

标记

<button [ngbPopover]="popContent" 
  triggers="manual" 
  #p="ngbPopover"
  (click)="p.toggle()"
  popoverTitle="You really wanna delete item?">
     Delete
</button>

<template #popContent>
    <div class="btn-group">
        <button (click)="delete(s.id)">Yes</button>
        <button (click)="p.close()">No</button>
    </div>
</template>

演示 Plunkr

于 2016-11-21T20:50:29.190 回答