0

我有一段代码需要在执行其他一些代码后调用。我正在使用broadcast这个。我需要从 2 个不同的地方调用相同的代码。现在这对我不起作用。我的代码是

广播 1

scope.$broadcast('selOrdLine', ordline);

scope.$on('selOrdLine', function (event, args) {
 // some code here
})

我还需要从其他地方调用此代码

所以我scope.$broadcast('selOrdLine', ordline);也放在那里。但它正在返回错误。

编辑

第二次使用时,我正在使用循环broadcast制作ordline数据。angular.forEach所以我$q只在数据像这样准备好之后才用于运行广播

$q.all(orderline).then(function () {
    $scope.$broadcast('selOrdLine', orderline);
});

错误是,broadcast被多次调用。但是当我使用$q它时,它应该只在设置订单数据后运行,对吗?

4

0 回答 0