在模板视图中访问 rootScope 变量不起作用

Accessing rootScope variable in template view not working

我知道这是可能的,并且已经看到很多关于如何做到这一点的话题,但我不知道我做错了什么。我的 $rootScope 变量没有出现在我的模板视图中。

.run(function($ionicPlatform,$state,$rootScope,$q,apiService) {
  $ionicPlatform.ready(function() {

    $rootScope.test = "HELLO ALL" ;

 ...
 ...
}),

.controller('EventCtrl', function($scope,$rootScope,$state,$stateParams) {

}),

并且在我的 EventCtrl webview 模板中:

<div style="color:red;font-weight:bolder;">{{$root.test}}</div>

然而,HELLO ALL从未出现。我已经按照其他一些帖子中的建议简单地尝试了 {{test}} ,但这也不起作用。我在这里弄错了什么?控制台中没有生成错误。

我还尝试了以下方法,在我设置的 EventCtrl 控制器中:

$scope.globalScope = $rootScope ;

然后在模板中访问:{{globalScope.test}} - 但它仍然无效。

您可以简单地使用 {{ test }},因为 $scope 继承自 $rootScope

检查以下内容:

angular.module("myApp", [])
  .run(function($rootScope) {
    $rootScope.test = "Hello All"
  })
  .controller("myCtrl", function($scope, $rootScope) {})
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.5/angular.min.js"></script>
<div ng-app="myApp" ng-controller="myCtrl">
  <div style="color:red;font-weight:bolder;">{{test}}</div>
</div>