当用户点击浏览器后退按钮时,我想打开一个弹出模式。它不应该将用户重定向到上一页,但应该打开一个弹出窗口并等待用户操作。
ngOnDestroy(){
this.finishModal.show();
}
目前,它正在重定向到上一页并尝试同时打开弹出窗口,导致重定向到上一页,然后在页面上显示模态的背景。我也试过了preventDefault()。
如何打开模态并停止执行ngOnDestroy()?
答案 0 :(得分:1)
ngOnDestory
不能用于此目的,仅用于清理(如取消订阅事件侦听器或可观察对象)
没有路由器Is there any lifecycle hook like window.onbeforeunload in Angular2?可能会做你想要的,
使用路由器https://angular.io/api/router/CanDeactivate(另请参阅https://angular.io/guide/router#candeactivate-handling-unsaved-changes)可能有效。
答案 1 :(得分:0)
在 ngDestroy 上发出一个事件并在父组件上监听它并打开弹出窗口。 它肯定会起作用。