在Angular 2 中安全地调用窗口上的方法



访问计算样式需要我们调用以下方法

window.getComputedStyle(elementRef.nativeElement)

上面的方法返回CssStyle对象,我们可以用来访问计算属性,例如通过CSS类/任何本机默认设置设置的填充物。

afaik,在Angular中,禁止在全局/本机元素上调用方法,因为当我们尝试将其渲染在服务器端时该程序可能无法使用。

我知道我们有Renderer可以在本机元素上调用方法,但是该方法签名没有返回任何结果(具有void返回类型)。

是否可以在窗口上安全调用一种方法&获得Angular 2 ?

的结果

您可以尝试这样的东西

 declare let window: any;
 @Component({
   selector: 'some',
   templateUrl: '<span>Content here</span>'
 })
 export class SomeComponent implements OnInit {
    ngOnInit(): void {
       if(window && window.getComputedStyle){
          // do staff here
       }
    }
 }

相关内容

  • 没有找到相关文章

最新更新