无法接收Angular js事件

时间:2012-09-03 13:38:26

标签: angularjs

请看一下这个简单的小提琴:http://jsfiddle.net/tgbpy/11/

我无法发出该事件。我需要在不创建共享服务的情况下做这件简单的事情。我做错了什么?

2 个答案:

答案 0 :(得分:2)

控制器1和控制器2未嵌套。他们是同龄人,并且属于rootScope。

<div ng-controller="controller1">...</div>
<div ng-controller="controller2">...</div>

因此,当您从controller1发出一个事件时,它不会到达controller2,但只会到达父节点(在这种情况下,它将到达rootScope)。

如果在controller2中声明了controller1,那么你的代码应该可以工作。

<div ng-controller="controller2">  
  ..
  <div ng-controller="controller1">...</div>
  .. 
</div>

答案 1 :(得分:1)

添加@manoj告诉你的内容

这是一个有效的小提琴

http://jsfiddle.net/tgbpy/13/

如果要发布消息,请调用$ rootScope。$ broadcast,除非两个控制器是嵌套的。如果你做$ rootScope。$广播任何范围的任何范围都会得到它。