首页 > 解决方案 > Angular 指令根据窗口高度动态调整组件高度

问题描述

根据屏幕动态调整 div/components(Elements) 高度的 Angular 指令

标签: javascriptangularjsangularangularjs-directivedirective

解决方案


    import { Directive, ElementRef, Renderer2, AfterViewInit } from '@angular/core';

@Directive({
  selector: '[appAutoFullHeight]'
})
export class AutoFullHeightDirective implements AfterViewInit {
  constructor(
    private el: ElementRef,
    private renderer: Renderer2
  ) {
    const windowHeight = window.innerHeight > 600 ? window.innerHeight : 600;
    const calculatedheight = `${windowHeight - 150}px`; // can be simply windowheight but you can do the adjuscement here
    this.renderer.setStyle(this.el.nativeElement, 'height', calculatedheight);

  }

  ngAfterViewInit() {

  }

}

推荐阅读