繁体   English   中英

使用AngularJS将$ rootScope中的函数分配给click事件

[英]Assign function from $rootScope to click event with AngularJS

如何使用$ rootScope运行此功能?
小提琴

  <div ng-app="myApp" ng-controller="parentCtrl">
      {{test}}
      <div ng-controller="myCtrl1">
          <div ng-controller="myCtrl2">
              <a href="#" ng-click="value()">show me</a>     
          </div>
      </div>   
    </div>

这是我的控制器:

angular.module('myApp', []).controller('parentCtrl', function($scope, $rootScope) {
    $rootScope.test = function() {
        alert("asdasd");
    }
});

angular.module('myApp').controller('myCtrl2', function($scope, $rootScope) {
    $scope.value = $rootScope.test();
});

页面刷新时会显示警报,但是当我单击ng-click时我想显示它

如果要将test功能分配给$scope.value ,只需删除以下行中的()

$scope.value = $rootScope.test;

小提琴

您需要将$ scope.value设置为$ rootScope.test

将其设置为$ rootScope.test()会调用该函数,并且实际上不会在$ rootScope中将值设置为对该函数的引用。

$scope.value = $rootScope.test

更新的小提琴

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM