当用户提交时,我如何关闭这个ng模板popover


<ng-template #Question>
<div class="d-flex flex-column align-items-center" style="width: 250px">
<textarea
[(ngModel)]="questionInput"
type="text"
placeholder="ask a ?"
class="w-90"
style="height: 100px"
></textarea>
<div class="w-90 m-2 d-flex justify-content-end">
<button (click)="askQuestion()" class="btn">
Submit
</button>
</div>
</div>
</ng-template>

在Angular 7中工作,使用ngbootstrap,我有一个出现在popover中的模板,上面从<div>上的[ngbPopover]="Question"调用。试图弄清楚如何在点击提交时关闭popover。我看到了其他从typescript中调用参数popover的答案,但我的代码中没有任何这样的参数。认为这就是使用nbbootstrap的目的。我知道必须有一种简单的方法,我可以将popover绑定到一个参数,我可以用(click)="..."事件侦听器切换该参数。或者我可以在模板中添加一个参数来执行此操作吗?

如何在提交时关闭我的popover?

感谢

只需在制作popover的元素中添加一个引用变量,并在提交时使用关闭方法

<!--see the #p="ngbPopover"-->
<div #p="ngbPopover" [ngbPopover]="Question" ...>

在你的按钮

<button (click)="p.close();askQuestion()" class="btn">

如果你想要人体模型,例如questionInput=";,您也可以将引用变量传递给函数askQuestion

<button (click)="askQuestion(p)" class="btn">

您的功能询问问题

askQuestion(p:NgbPopover)
{
if (questionInput)
p.close()
}

相关内容

  • 没有找到相关文章

最新更新