【发布时间】:2018-02-12 19:30:20
【问题描述】:
我们知道,当我们点击浏览器上的刷新按钮时,我们可以弹出一个询问是否确定刷新页面。通常是通过在 onbeforeunload 上添加一个事件监听器来完成的。
但是,在我的 Aurelia 应用程序中,我尝试这样做,但它不起作用。
假设这是我的 app.js(根 ModelView)
export class App {
this.refreshClicked = () =>{ return "Are you sure you want to exit?"; };
attached(){
window.addEventListener("onbeforeunload", this.refreshClicked);
}
但是它不起作用,但是,如果我们将 return 语句替换为 console.log("clicked") 我可以看到侦听器可以正常工作。
有什么帮助吗?
【问题讨论】:
-
你需要在你的字符串周围添加一个
confirm方法。return confirm("Are you sure you want to exit?")现在你只是返回一个字符串。 -
@JessedeBruijne 是的,我意识到了,谢谢。
-
您是否尝试过使用 canDeactivate() 回调?