如果应用状态为脏,我正在努力处理后退按钮并向用户询问确认。关闭选项卡和重新加载已通过onbeforeunload
挂钩处理。
我玩$routeChangeStart
,$beforeRouteChange
等,但无法正确处理。
使用$routeChangeStart
,在调用回调之前,路由会有效地更改。
处理这种情况的正确方法是什么?
感谢您的帮助。
答案 0 :(得分:6)
我相信$ locationChangeStart会在您希望的时候触发。
答案 1 :(得分:2)
你可以使用:
$scope.$on('$routeChangeStart', function(next, current) {
//broadcasted before a route change
// do something here
});
上查看更多内容
答案 2 :(得分:1)
在父控制器中保留脏状态的模型,对所有视图都是通用的?如果任何视图的控制器检测到脏状态,则会出现警告/确认,并使用“取消”按钮将$ location.path(...)重置为脏页。