$on和$broadcast in angular

前端之家收集整理的这篇文章主要介绍了$on和$broadcast in angular前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个footerController和codeScannerController具有不同的意见。

angular.module('myApp').controller('footerController',["$scope",function($scope) {}]);

angular.module('myApp').controller('codeScannerController',function($scope) {
console.log("start");
$scope.startScanner = function(){...

当我点击

  • 在footer.html我应该得到这个事件codeScannerController。
    <li class="button" ng-click="startScanner()">3</li>

    我认为它可以实现与$ on和$广播,但我不知道如何和不能找到的例子在任何地方。

如果你想$ broadcast使用$ rootScope:

$scope.startScanner = function() {

    $rootScope.$broadcast('scanner-started');
}

然后要接收,使用你的控制器的$ scope:

$scope.$on('scanner-started',function(event,args) {

    // do what you want to do
});

如果你想要你可以传递参数,当你$广播:

$rootScope.$broadcast('scanner-started',{ any: {} });

然后收到他们:

$scope.$on('scanner-started',args) {

    var anyThing = args.any;
    // do what you want to do
});

文档里面这个里面的Scope docs

猜你在找的Angularjs相关文章