是否可以在不保存更改的情况下侦听路由更改和onwindowunload来确认页面离开?
用例:
如果用户单击“取消”,则停止页面/路线更改。
我看到了几个不同的示例,但没有一个工作得很正确。
演示:http://plnkr.co/edit/Aq8uYg
在演示中,如果您更改输入的值,则在尝试返回时会注意到您。
如果未确认更改,请收听$locationChangeStart并使用event.preventDefault()以取消位置更改。
$locationChangeStart
event.preventDefault()
该方法具有以下优点$route.reload():当前控制器和模型不会重新实例化。因此,所有变量均与用户单击“返回”按钮保持相同。
$route.reload()