网站搜索

javascript - 在 Angular 4 中,当用户刷新/重新加载页面时无法弹出确认框


我正在构建一个 Angular 4 应用程序,我想实现一个 确认框,只有当用户按下页面刷新或重新加载页面时才会显示。确认框应该像

我使用了这里的相同代码。在 jsfiddle 上,功能运行正常,但在我的 Angular 应用中,它不起作用。如果我在函数内部放置任何 console.log,那么我能够在刷新页面时在控制台中得到输出,但这并不能阻止页面重新加载。

这里有什么问题的建议吗!

答案#1

这是 MDN 说的:

window.onbeforeunload = function(e) {
  var dialogText = 'Dialog text here';
  e.returnValue = dialogText;
  return dialogText;
};

你应该在使用 return 关键字的同时使用 returnValue 属性。