Angularjs   发布时间:2022-04-20  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了angularjs – 在ui-router解析中使用$scope大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用ui-router解析,以便从服务中获取一些数据.

事情是,我需要从父$scope获取一个值,以便调用服务,如下所示.@H_450_2@

resolve: {
              contactservice: 'contactservice',contacts: function ($scope,contactservicE) {
                  return contactservice.getContacts($scope.parentCtrl.parentObjectId);
              }
          }

我不断得到错误:[$rootScope:infdig]达到$$digest()迭代.中止!@H_450_2@

还尝试了一些绝望的尝试,例如向resolve对象添加范围,如下所示,没有成功.@H_450_2@

scope: $scope

有任何想法吗?@H_450_2@

是不可能的,范围还没有被初始化,所以你不能在resolve对象中使用它.初始化后,您可以访问控制器中的范围.整个解决方案是在控制器初始化之前运行,以便您可以注入并直接访问范围中已解决的项目.

如果您需要将变量传递给下一个状态,则可以使用可用于解析的$stateParams对象来执行此操作.更改状态时可以添加数据,例如:@H_450_2@

在您的模板中,如果您的范围中有一个objectId:@H_450_2@

<a ui-sref="statename({'id': objectID})">Change states</a>

或在您的控制器:@H_450_2@

$scope.go('statename',{'id': $scope.objectID});

然后,您可以通过使用$stateParams在您的解决中检索:@H_450_2@

resolve: {
    contactservice: 'contactservice',contacts: function ($stateParams,contactservicE) {
        return contactservice.getContacts($stateParams.id);
    }
}

大佬总结

以上是大佬教程为你收集整理的angularjs – 在ui-router解析中使用$scope全部内容,希望文章能够帮你解决angularjs – 在ui-router解析中使用$scope所遇到的程序开发问题。

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

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