Angular 通用:window api 可用时的生命周期挂钩
Angular Universal: lifecycle hook for when window api becomes available
我已经使用 Angular Universal 实现了服务器端渲染。我有一个方法,当 DOM 是交互式的并且像 window.navigator
这样的浏览器 api 可用时(因为我想对用户的语言环境做一些事情)。
是否有生命周期挂钩或其他方式来监听我何时可以使用 window.navigator
?
我在本地测试了 运行ning 我的节点服务器,发现 ngOnInit()
是 运行 导航器代码的合适位置。 ngOnInit()
将在服务器端调用,但会在浏览器中再次调用,因此您需要对导航器进行真实检查:
ngOnInit() {
if (this.window && this.window.navigator) {
// do stuff
}
}
值得注意的是,我正在使用 window provider 访问 window -
constructor(@Inject(WINDOW) private window: any) { }
我已经使用 Angular Universal 实现了服务器端渲染。我有一个方法,当 DOM 是交互式的并且像 window.navigator
这样的浏览器 api 可用时(因为我想对用户的语言环境做一些事情)。
是否有生命周期挂钩或其他方式来监听我何时可以使用 window.navigator
?
我在本地测试了 运行ning 我的节点服务器,发现 ngOnInit()
是 运行 导航器代码的合适位置。 ngOnInit()
将在服务器端调用,但会在浏览器中再次调用,因此您需要对导航器进行真实检查:
ngOnInit() {
if (this.window && this.window.navigator) {
// do stuff
}
}
值得注意的是,我正在使用 window provider 访问 window -
constructor(@Inject(WINDOW) private window: any) { }