gpt4 book ai didi

javascript - AngularJS 监听状态变化事件

转载 作者:行者123 更新时间:2023-12-03 12:52:29 24 4
gpt4 key购买 nike

我有一个希望很简单的问题。我用 Ionic 和 AngularJS 构建了一个小应用程序。有两种状态,其中一种是包含表单的选项卡。提交后,不应再访问表单选项卡。我试过在本地存储中写一个 bool 变量,它对我来说很好用。不幸的是,当我提交表单时,我仍然可以按下 ionic 的后退按钮或 android 硬件按钮返回表单并再次提交。我通过 ng-init 调用了一个函数,该函数在加载之前切换状态,但这只适用于刷新页面,而不适用于状态更改。

我如何监听状态变化?你有更好的解决方案吗?

最佳答案

其实很简单,UI-router 可以让你访问 3 个不同的状态监听器:

$rootScope.$on('$stateChangeStart',myFunc) -> 状态改变时触发

$rootScope.$on('$stateChangeSuccess', myFunc) -> 状态成功改变时触发

$rootScope.$on('$stateChangeError', myFunc) -> 状态改变失败时触发

然后您可以通过将状态关联到 promise 来禁止访问使用状态的解析属性的页面。 see doc

如果 promise 得到解决,则授予访问权限,否则拒绝访问。

关于javascript - AngularJS 监听状态变化事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31741275/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com