用作属性类型时如何处理浏览器特定类型?
假设你有一个这样的属性:
public intersectionObserver?: IntersectionObserver;
并且你想使用 Angular Universal,你如何处理这个?这样你只会得到ReferenceError: IntersectionObserver is not Defined
。
我知道要检查可以使用的平台:
import { isPlatformBrowser, isPlatformServer } from '@angular/common';
...
constructor(@Inject(PLATFORM_ID) private platformId: Object) {}
isBrowser() {
return isPlatformBrowser(this.platformId);
}
isServer() {
return isPlatformServer(this.platformId);
}
处理特定代码,但我不知道如何处理属性,也找不到关于我觉得奇怪的主题的任何资源。
你如何处理这个问题?
Say you have a property like:
public intersectionObserver?: IntersectionObserver;
and you want to use Angular Universal, how do you handle this? With this you only get ReferenceError: IntersectionObserver is not defined
.
I know that to check for the platform you can use:
import { isPlatformBrowser, isPlatformServer } from '@angular/common';
...
constructor(@Inject(PLATFORM_ID) private platformId: Object) {}
isBrowser() {
return isPlatformBrowser(this.platformId);
}
isServer() {
return isPlatformServer(this.platformId);
}
to handle specific code but I have no idea how to handle properties, nor can I find any resources on the subject which I find bizarre.
How do you handle this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论