加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – 调用$location.search()后更新ui-router中的$state

发布时间:2020-12-17 17:38:27 所属栏目:安全 来源:网络整理
导读:我有一个角度应用程序,它使用离子框架,后端使用ui-router. 在我的一个控制器中,我打电话给: $location.search('filter','sometext'); 我在路由配置中禁用了reloadOnSearch.我注意到更新位置不会更新$stateParams.有没有办法强制$stateParams更新位置更新?
我有一个角度应用程序,它使用离子框架,后端使用ui-router.

在我的一个控制器中,我打电话给:

$location.search('filter','sometext');

我在路由配置中禁用了reloadOnSearch.我注意到更新位置不会更新$stateParams.有没有办法强制$stateParams更新位置更新?我查看了ui-router文档,但没有看到任何关于这种情况,但也许我错过了它.

解决方法

我有类似的情况.如果您已禁用reloadOnSearch,则无法跟踪路由更新,但我找到了此案例的解决方案.

观看$stateParams:

$scope.$watchCollection('$stateParams',function (newParams) {
    var search = $location.search();

    if (angular.isObject(newParams)) {
      angular.extend(search,newParams);
    }

    $location.search(search).replace();
});

更改$stateParams,而不是路由:

$scope.$stateParams.offset += $scope.$stateParams.limit;

完全working example.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读