在我的angular应用程序中,我想在用户试图重新加载或离开浏览器时不保存更改,或者当后台进程仍在运行时(根据我代码中的标记)显示一条消息。
然而,我发现唯一的选择是启用默认的浏览器警报,它的默认消息是:"您所做的更改可能不会被保存。">我找不到任何方法来覆盖这个弹出窗口。
你可以试试下面的代码:
@Component({
selector: 'app-root',
..
)}
class AppComponent{
@HostListener('window:beforeunload', ['$event'])
doSomething($event) {
if(this.hasChanges) $event.returnValue='Your data will be lost!';
}