@duoduo-oba/ng-devui
Version:
DevUI components based on Angular
54 lines (53 loc) • 1.97 kB
TypeScript
import { ComponentFactoryResolver, ComponentRef, ElementRef, Injector, OnInit, OnDestroy, ViewContainerRef } from '@angular/core';
import { OverlayContainerRef } from '@duoduo-oba/ng-devui/overlay-container';
import { PopoverComponent } from './popover.component';
import { PopoverType, PositionType, TriggerType } from './popover.types';
export declare class PopoverDirective implements OnInit, OnDestroy {
private triggerElementRef;
private overlayContainerRef;
private viewContainerRef;
private injector;
private componentFactoryResolver;
popoverComponentRef: ComponentRef<PopoverComponent>;
_content: string | HTMLElement;
private subscription;
private blurSub;
private blurSubscription;
/**
* popover内容
*/
content: any;
/**
* 是否通过visible来控制popover状态
*/
controlled: boolean;
/**
* popover显示位置
*/
position: PositionType;
/**
* 是否显示动画
*/
showAnimate: boolean;
/**
* `scrollElement` 默认值是 `window `, 可以不传,只有当页面的滚动不在 window 且`appendToBody`属性为`true`上的时候才需要传递
*/
scrollElement: Element;
/**
* `appendToBody`默认可以不传,仅当popover绑定元素外层宽高不够时,overflow为hidden,不想popover的弹出框被一并隐藏掉。
*/
appendToBody: boolean;
zIndex: number;
popType: PopoverType;
trigger: TriggerType;
hoverToContent: boolean;
visible: boolean;
constructor(triggerElementRef: ElementRef, overlayContainerRef: OverlayContainerRef, viewContainerRef: ViewContainerRef, injector: Injector, componentFactoryResolver: ComponentFactoryResolver);
onDocumentClick: (event: any) => void;
createPopover(): void;
show(): void;
destroy(): void;
ngOnInit(): void;
ngOnDestroy(): void;
hide(): void;
}