gpt4 book ai didi

javascript - Angularjs $broadcast 一次,$on 两次

转载 作者:行者123 更新时间:2023-12-01 16:14:59 25 4
gpt4 key购买 nike

它从 rootScope 发送一次 $broadcast,但监听器 ($on) 被调用两次。

监听器位于 Controller 中,它使用 $rootScope.$on 而不是 $scope.$on。有人遇到过这个问题吗?

编辑

根范围:

$rootScope.$broadcast('menuActivateAction' + item.event_name_postfix, item.event_args);

其他 Controller :

$rootScope.$on('menuActivateActionPublish', function(event) {});

最佳答案

由于您在 $rootScope 上注册了 $on 监听器,因此它不会被 Controller 销毁,并且下次您初始化 Controller 时它会再次创建。

您应该在 Controller 范围内创建监听器

$scope.$on('menuActivateActionPublish', function(event) {});

关于javascript - Angularjs $broadcast 一次,$on 两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30968948/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com