【问题标题】:ngbPopover will not close and will open on loadngbPopover 不会关闭,会在加载时打开
【发布时间】:2018-11-15 08:06:42
【问题描述】:

我想在页面加载或不触发按钮的情况下显示弹出框并且永远不会关闭 我在 Angular 中使用 ngbPopover。

<button placement="left" (click)="openQuestionnaire()" [ngbPopover]="popContent" >0/4</button>

在此处使用参考:https://ng-bootstrap.github.io/#/components/popover/examples

【问题讨论】:

  • 详细说明您的问题。

标签: angular ng-bootstrap


【解决方案1】:

您必须将此属性添加到您的按钮:

[autoClose]="false"

那么你的按钮应该是这样的:

<button placement="left" 
        (click)="openQuestionnaire()" 
        [ngbPopover]="popContent" 
        [autoClose]="false" >0/4</button>

从你分享的链接中我发现了这个:

<button type="button" class="btn btn-outline-secondary mr-2" 
        ngbPopover="What a great tip!" 
        [autoClose]="false" 
        triggers="manual" 
        #p="ngbPopover" 
        (click)="p.open()" 
         popoverTitle="Pop title">
             Click me to open a popover
</button>

根据您的评论,您可以在页面中显示您的组件时触发它:

<button placement="left" 
        #pop="ngbPopover"
        (click)="openQuestionnaire()" 
        [ngbPopover]="popContent" 
        [autoClose]="false" >0/4</button>

在你的组件类中:

ngOnInit(){
    if(!pop.isOpen()){
        pop.open();
    }
}

【讨论】:

  • 是否可以不触发按钮自动显示?
  • 您可以在ngOnInit(){ p.open(); } 中触发它。这里p是模板引用变量#p
  • 你是否使用任何构造函数来定义你在 if(!popover.isOpen()){ pop.open(); }
  • 顺便告诉你我有 (click)="openQuestionnaire()" 来打开模态......如果我在 ngOnInit() 上使用它,模态也将在同时
  • @marjorieasensi 我认为这只会打开弹出框,因为它最终不会触发点击事件。
猜你喜欢
  • 1970-01-01
  • 2016-02-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-01
  • 1970-01-01
相关资源
最近更新 更多