1

我正在使用page.js作为路由器构建一个单页应用程序。在 SPA 中更改页面时,默认的window.onbeforeunload事件似乎不会触发。我怎样才能实现类似的东西,如果用户决定不继续,我可以有选择地取消页面转换?(即“您的更改未保存:可以放弃更改吗?”)

谢谢!

4

1 回答 1

0

为了防止地址栏发生变化并有效地停止页面处理,在show函数内部,设置context.handled = false. 这会停止pushStatepage.js 中的操作,从而防止地址栏发生变化。

例子:

page('/prevent-access', (context, next) => { context.handled = false }) // Prevents URL change to this page.
于 2020-01-23T23:40:49.397 回答