使用@HostListener监听浏览器的事件。
beforeunload事件在关闭浏览器时调用,Chrome浏览器会判断页面是否做了修改,若没有修改直接关闭页面不会提示。
isDataSaved标识页面数据是否已保存,只有当未保存isDataSaved为false时离开才会提示。
isDataSaved = false;
@HostListener('window:beforeunload', ['$event']) beforeUnloadHander(event) {
return this.isDataSaved ;
}
saveDataToDatabase(): void {
...
this.isDataSaved = true;
}
本文介绍如何使用Angular的@HostListener装饰器监听浏览器的beforeunload事件,以判断页面数据是否已保存,并在未保存时给出警告。通过设置isDataSaved变量的状态,可以控制在数据未保存的情况下关闭页面时的提示行为。

1851

被折叠的 条评论
为什么被折叠?



