如果表单很脏则阻止路由[Angular 2]

时间:2016-08-23 02:17:42

标签: angular angular2-routing

我被封锁了,
在Angular 2中,如果页面中的表单

,我需要阻止任何用户点击事件,甚至浏览器刷新

你能帮我解决一些想法吗?

2 个答案:

答案 0 :(得分:7)

您似乎在寻找canDeactivate

它允许您阻止路由。您需要一个共享服务,您可以在其中更新表单脏状态,以便警卫可以访问它。

答案 1 :(得分:3)

棱角分明的文档涵盖了这个确切的问题:
https://angular.io/guide/router#candeactivate-handling-unsaved-changes 我将此作为评论,但我缺乏这样做的声誉。