首页 > 解决方案 > 我的目标是从指令中获取元素位置并在同一位置打开覆盖层。要打开我尝试使用的覆盖层:

问题描述

我的目标是从指令中获取元素位置并在同一位置打开覆盖层。要打开我尝试使用的覆盖层:

    this.overlayRef = this.overlay.create({
      positionStrategy,
      scrollStrategy,
      hasBackdrop: true,
    });

   this.overlayRef
   .backdropClick()
      .pipe(takeUntil(this.unsubscribe))
      .subscribe(() => {
        this.detachOverlay();
      });
  }

private attachOverlay(): void {
    if (!this.overlayRef.hasAttached()) {
      const periodSelectorPortal = new TemplatePortal(this.zisoCoachMark, this.vcr);

      this.overlayRef.attach(periodSelectorPortal);
    }
  }

  private detachOverlay(): void {
    if (this.overlayRef.hasAttached()) {
      this.overlayRef.detach();
    }
  }

标签: angulartypescriptangular-directiveangular-cdk

解决方案


推荐阅读