如何为Angular 2+ Universal定义全局虚拟文档对象?

时间:2018-06-30 17:13:38

标签: javascript html angular typescript angular-universal

我正在使用angular v6,并尝试使用通用角度构建应用程序。 并且访问诸如documentwindow等对象之类的问题。

对于我自己的代码,可以肯定的是,我可以注入PLATFORM_ID并使用isPlatformBrowser

例如:

if (isPlatformBrowser(this.PLATFORM_ID)) {
  const el = document.getElementById('id');
}

问题在于某些第三方库(以我为例)使用document.getElementsByTagName('script')

是否有一种方法来定义带有声明的documentgetElementsByTagName和其他方法的全局虚拟getEelementById对象,而这些方法实际上什么也没做,但是在应用尝试访问时不会引发错误document对象是platform-server中的全局对象?

或者也许有另一种优雅的方法可以解决此问题?

谢谢。

0 个答案:

没有答案