Angular 7 - 离开确认

Angular 7 - leave confirmation

我想知道是否可以在用户单击单页应用程序中的其他模块时在某个模块上有未保存的数据时触发离开确认。如果您还可以在用户刷新或离开网页时触发它。您将如何实施?

提前致谢!

可以使用 CanDeactivate 轻松实现路由到另一个模块的确认。

刷新和 x 选项卡可能有点棘手。您必须将侦听器添加到 window 事件 beforeunload.

类似这样的东西可能适用于给定的组件:

@HostListener('window:beforeunload', ['$event'])
unloadHandler(event: Event) {
    // Your logic on beforeunload
}