javascript - Angular 窗口.onbeforeunload

标签 javascript angularjs angular-ui-router

我正在开发一个具有某些表单的系统,每个表单都位于 angularjs ui-router 的状态路由上。

我的需求是,如果当前表单有一些更改,并且用户尝试更改为另一种状态而不保存,系统将显示一条确认消息,如javascript的confirm。结果类似于多页面应用程序上的 window.onbeforeunload

有人有办法做到这一点吗?

PS:我认为显示代码不会有帮助,但如果您需要,请添加一些评论..

最佳答案

是的,您可以对象 $stateChangeStart 来拦截状态更改,并在触发 stateChange 的事件上使用 PreventDefault 来阻止状态更改(如有必要)。这里有一个很好的解决方案: Using $state methods with $stateChangeStart toState and fromState in Angular ui-router

关于javascript - Angular 窗口.onbeforeunload,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32970496/

相关文章:

javascript - 如何使用 for 循环遍历未知值

javascript - 试图将数据从 .php 文件传递​​到 .js 文件

javascript - 如何更改 CKEditor,使其不会自动将 <p></p> 放入文本区域?

javascript - 检查页面中 javascript 函数的可用性

javascript - 有没有办法在 AngularJs 中只投赞成票或反对票一次?

javascript - 在 AngularJS 中访问脚本内的范围变量

AngularJS 1.7.9 : how to debug "Possibly unhandled rejection: {}"?

javascript - 如何使文本文件在获取并添加到 div 时具有相同的布局

javascript - iframe 在 AngularJS 1.3.0 中不起作用

javascript - UI 路由器 $state.go 没有重定向?