javascript - Angular 中兄弟作用域之间的通信

标签 javascript angularjs

这是如何在两个作用域兄弟组件之间正确通信?

  1. Ctrl1 向 Ctrl1 和 Ctrl2 的父范围发出事件。
  2. 父作用域监听 Ctrl1 发出的事件,然后将另一个事件向下广播到 Ctrl2。
  3. Ctrl2 监听来自父作用域的广播事件。

diagram

最佳答案

是的,这就是我在 Angular 中的兄弟作用域之间进行通信的方式。通常,我认为 Ctrl1 向其所有后代作用域发出“向上”信号,并“在”父作用域上监听该事件,父作用域向所有子作用域广播“向下”信号。在这种情况下,Ctrl2 应该在“on”上设置一些东西,以便在听到事件后做一些事情。

作为旁注,我做了类似的事情,我将 rootScope 用作集中式事件总线,它在其中监听不同子范围的事件,然后执行一些任务或再次向下广播。然后子范围将负责简单地发射到 rootScope。

关于javascript - Angular 中兄弟作用域之间的通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27709769/

相关文章:

javascript - 如何显示我的 Owl Carousel 第二项的一小部分?

javascript - 如何识别 Cordova 的第一次通话

javascript - 如何防止在 UI-GRID 中单击自定义元素上的行选择

AngularJS:如何在表达式中显示单引号

javascript - 如何检查元素是否存在?

javascript - 在 shadow-root 中注入(inject) CSS 样式而不是 head 标签 | Vue.js 和 Webpack

javascript - 选择器有问题

javascript - Google Charts LineChart 选项不完全工作(双 y 轴)

angularjs - Dotnet Core 中的多部分 MemoryStream

angularjs - 用户界面路由器 : open state in new tab with target =“_blank” with object params