问题标签 [angular-broadcast]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - Angularjs $broadcast 一次,$on 两次
它从 rootScope 发送一次 $broadcast,但侦听器 ($on) 被调用两次。
侦听器位于控制器中,它使用$rootScope.$on
而不是$scope.$on
. 有人遇到过这个问题吗?
编辑
根范围:
其他控制器:
javascript - 如何访问不同页面控制器中的更新值?
我在不同页面控制器之间获取更新值时遇到问题,情况如下。
page1.html
page2.html
应用程序.js
结果
预期结果
如何实现这种情况?
我尝试使用$broadcast
本教程中的单独页面控制器:小提琴
javascript - 从另一个控制器广播功能不起作用,但仅在生产中
这可能是迄今为止我使用 AngularJS 遇到的最奇怪的问题。我们的网站由不同的路线构成。每条路由都有自己的视图和控制器,还有一个父控制器叫做 MainCtrl。在我的 index.html 中,我导入了我拥有的所有控制器。在某些时候,我正在重新路由到另一个子路由(让我们将其称为 /iframe,并以 IframeCtrl 作为控制器),然后,当我尝试将事件名称从 MainCtrl 向下分派给所有子路由(广播函数在 IframeCtrl 中)时,什么都没有发生(本地没问题,问题只在生产中)。我不确定问题是否在于,在我更改路线后,尚未加载 IframeCtrl 中的函数,但我确实在 index.html 中加载了它,所以我认为这已经足够了,正如我所说,它确实有效本地。
这是来自 MainCtrl 的代码:
这是我工厂在应用程序中的代码。
这是 IframeCtrl 中的代码
任何想法如何去做?
谢谢你,米拉
javascript - 在 AngularJS 中加载子侦听器后广播父事件
我有三个控制器——Parent and Child1 和 Child2。Child1 和 Child2 是父控制器内的选项卡
父控制器正在调用该服务以获取一些数据,然后广播该事件。孩子监听那个事件,获取数据并执行必要的事情。
但是有时当父事件得到广播时,我的子监听器没有注册(所以子监听器将不起作用)。使用超时功能来延迟事件广播,但它会在缓慢的互联网连接上搞砸。有没有办法确保在我的孩子听众注册后我的广播收听总是被启动。以下是截至目前的以下代码
我是 angularJS 的新手,在网上找不到合适的解决方案。请指导。提前致谢 :)
javascript - 角度广播未在第二次通话时更新
我有一个调用服务的控制器。在服务中,我执行了一个 $rootScope.$broadcast ,它在页面加载时完美运行。但是,当我再次调用该服务时,似乎没有调用 $rootScope.$broadcast。
控制器:
服务:
指示:
HTML:
index.html
页面加载MyController
控制器。
在页面加载时,被$broadcast
调用的 fromthis.inititate
被成功调用并{{myValue}}
显示为 1。
但是,单击我的按钮ng-click="Next()"
时,尽管再次调用该服务,但{{myValue}}
仍显示为 1,而不是 1 + 1 = 2。
有什么想法吗?
javascript - $broadcast 异步工作,需要同步
我有一个控制器,它有许多 $rootScope.$broadcast 更新指令的内容。
第一个 $rootScope.$broadcast 正在清除所有内容/数据,而另一个则填充它。
注意:标头是从我的 $stateProvider 解析的,例如:
指示:
我遇到的问题是,在页面加载时,似乎在 clear 完成之前调用了 $broadcast 的 title 和 total 。
更新:
Plunker:http ://plnkr.co/edit/o7wEFyIGh0284ZAc9VnS?p=preview
无论何时在 home.html 上,该指令都会隐藏 - 正确。无论何时在 cart.html 上,该指令都会显示 - 正确。
要查看问题,请单击购物车...单击按钮以增加计数器。然后返回主页,然后返回购物车...计数器不会重置为 0
angularjs - 如何跟踪 $scope.$broadcast 上的事件?
我正在使用角度计时器,我只是有点困惑如何跟踪它的事件。例如,我想在时间到后做某事,但我在控制台日志上看不到任何事件。
控制台是空的。
https://github.com/siddii/angular-timer/blob/master/examples/angularjs-add-countdown-seconds.html
c# - 父控制器在刷新页面时不会为子控制器触发 $broadcast 事件
在父控制器中,我以秒为单位获取计时器值并将其显示在控制器为“ParentController”的索引页面上。
我使用 ui-view 指令添加了一个局部视图。部分视图的控制器是“子控制器”。在我们的例子中,父控制器 $broadcast 请求发送定时器值子控制器。
在第一次尝试它工作。但是当您刷新页面时,它不会向子控制器广播计时器值。
angularjs - 查看未更新 - Angular
索引文件中的视图未更新。这是代码片段。
指数:
索引控制器:
和我的登录控制器:
我面临的问题是,当登录控制器广播的范围时,它不显示并包括我的部分页眉导航和页脚文件。
我在这里错过了什么吗?