有条件的ngx-smart-popover角度打开

时间:2019-05-03 13:27:16

标签: angular typescript

目前,我具有类似的智能弹出式窗口设置,带有附加按钮,并在单击时显示。像这样将其放入自己的组件中:

<popover-content #myPopover id="myPopover"  
   placement="bottom" [animation]="true" [closeOnClickOutside]="false" >
// Some content here
</popover-content>
<input type='button' #selectMyPopover [popover]="myPopover" class='btn'
  popoverPlacement="bottom" [popoverOnHover]="false" 
 [popoverCloseOnMouseOutside]="false" [value]='myButton'>

然后当我要使用它时,将其包含在组件标签中,如下所示:

<app-my-popover></app-my-popover>

很棒,但是我发现的所有示例都需要使用该附加按钮,如下所示:

<input type='button'[popover]="myPopover"...

我试图根据条件显示弹出窗口,而不必单击该按钮。例如:

myMethod()
{
    if(true)
    {
        this.myPopover.open();
    }
}

是否可以以类似的方式自行从打字稿中打开而不是使用按钮?

2 个答案:

答案 0 :(得分:3)

您需要使用ViewChild来引用打字稿中的popover组件,如下所示:

@ViewChild('myPopover') myPopover : PopoverContentComponent;

然后您可以在所需的位置访问此参考:

this.myPopover.show();

答案 1 :(得分:3)

如果您查看其来源https://www.google.com/url?sa=i&source=images&cd=&cad=rja&uact=8&ved=2ahUKEwjXoo2GvP_hAhVrAGMBHRGXCuYQjRx6BAgBEAU&url=https%3A%2F%2Fwww.androidauthority.com%2Fgoogle-maps-multi-stop-directions-700971%2F&psig=AOvVaw3dtFX_biqy1dEV9tUjVGlh&ust=1556976616072449,则有showhide方法。然后,您需要使用@ViewChild,如下所示在ts文件中引用该对象

@ViewChild('myPopover') myPopover : PopoverContentComponent;

以后你可以做

this.myPopover.show();