Angularjs   发布时间:2022-04-20  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了angularjs – 设置reloadOnSearch = false时,如何在angular-ui-router中查看状态参数大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个页面,显示一个大表格,其中包括排序,过滤等.我“保存”参数(要排序的列,哪些过滤器适用)到URL,以便这些东西包含在浏览器历史记录中,一个人可以去返回或发送包含所有参数的其他人的链接.要在不导致重新加载的情况下操作URL,我将reloadOnSearch = false设置为我的ui路由器状态.

在运行良好的大部件中:我可以将链接发送给其他人,如果我按照从我的表格页面引出的链接,我可以使用浏览器的后退按钮,并使用与之前相同的设置结束相同的表格.

但是,如果我操作参数(搜索或stateParam,无关紧要),而我已经处于所需的状态…例如.单击链接或手动编辑浏览器的地址栏,这绝对没有效果.如果我使用“后退”按钮,这甚至是正确的. URL中的参数会更改,但视图不会更新.

由于stateParam的改变,我不希望发生完全重新加载,但我仍然希望得到注意.

我尝试了以下注意事项:

$scope.$watch(function() {
  return $stateParams['someStateThatMightChange'];
},function(newVal,oldVal) {
  if (newVal !== oldVal) {
    alert('Hey,I have been changed!');
  }
});

但是,如果我操纵URL以使someStateThatMightChange发生更改,则不会发生任何操作.警报未显示.观看stateParameters的正确方法是什么?

解决方法

你尝试过 – 例如?

$scope.$watch(function(){            return $state.params.tabId;        },function(newParams,oldParams){            console.log(newParams,oldParams);            if(newParams!== oldParams){                警告(‘嘿,我已经改变了!’);            }        });

大佬总结

以上是大佬教程为你收集整理的angularjs – 设置reloadOnSearch = false时,如何在angular-ui-router中查看状态参数全部内容,希望文章能够帮你解决angularjs – 设置reloadOnSearch = false时,如何在angular-ui-router中查看状态参数所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。