请看一下这个简单的小提琴:http://jsfiddle.net/tgbpy/11/
我无法发出该事件。我需要在不创建共享服务的情况下做这件简单的事情。我做错了什么?
答案 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告诉你的内容
这是一个有效的小提琴
如果要发布消息,请调用$ rootScope。$ broadcast,除非两个控制器是嵌套的。如果你做$ rootScope。$广播任何范围的任何范围都会得到它。