Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs广播事件是否可以执行两次?_Angularjs - Fatal编程技术网

Angularjs广播事件是否可以执行两次?

Angularjs广播事件是否可以执行两次?,angularjs,Angularjs,我想执行两次angularjs广播事件,因为我想更改angularjs广播事件内部的逻辑。我想在第一次完成时再次执行angularjs广播事件。它应该等待一次完成,然后再次执行第二次。如何做到这一点?一个解决方案是在$timeout中包装第二次广播,当调用堆栈为空时,将首先发出$timeout。换句话说,当第一次广播和收听广播的方法结束时 $scope.$broadcast('myEvent', 'Some data'); $timeout(function(){ $scope.$bro

我想执行两次angularjs广播事件,因为我想更改angularjs广播事件内部的逻辑。我想在第一次完成时再次执行angularjs广播事件。它应该等待一次完成,然后再次执行第二次。如何做到这一点?

一个解决方案是在$timeout中包装第二次广播,当调用堆栈为空时,将首先发出$timeout。换句话说,当第一次广播和收听广播的方法结束时

$scope.$broadcast('myEvent', 'Some data');
$timeout(function(){
    $scope.$broadcast('myEvent', 'Some data');
}, 0);

提供您已经完成的一些代码示例,以便轻松回答和检查在这种情况下调用广播两次是否合适。您需要等待第一次完成,然后启动第二次?