有人可能会问这个问题,但我找不到令人满意的答案。因此,我想知道是否有可能发布和广播事件的服务 - 与$rootScope
一样。类似的东西:
app.controller 'myController', (myService)->
myService.$on 'pokeEvent', ->
console.log "I've been poked"
当然,人们总是可以使用rootScope,但我很好奇
答案 0 :(得分:2)
没有。 Angular的事件系统与范围相关联:$emit
, $broadcast
and $on
methods exist on the Scope
prototype。默认情况下,服务不与任何特定范围关联,因此您需要注入$ rootScope来发送/侦听事件。