Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 类似于发出事件的rootScope的服务_Angularjs - Fatal编程技术网

Angularjs 类似于发出事件的rootScope的服务

Angularjs 类似于发出事件的rootScope的服务,angularjs,Angularjs,可能有人问了这个问题,但我找不到满意的答案。因此,我想知道是否有可能拥有一个能够发出和广播事件的服务,就像$rootScope那样。比如: app.controller 'myController', (myService)-> myService.$on 'pokeEvent', -> console.log "I've been poked" 当然,人们总是可以使用rootScope,但我很好奇,Angular的事件系统是与作用域绑定在一起的。默认情况下,

可能有人问了这个问题,但我找不到满意的答案。因此,我想知道是否有可能拥有一个能够发出和广播事件的服务,就像
$rootScope
那样。比如:

app.controller 'myController', (myService)->
    myService.$on 'pokeEvent', -> 
      console.log "I've been poked"

当然,人们总是可以使用rootScope,但我很好奇,Angular的事件系统是与作用域绑定在一起的。默认情况下,服务不与任何特定作用域相关联,因此您需要注入$rootScope来发送/侦听事件。

但是有一种方法可以模拟类似于rootScope工作方式的行为,对吗?问题是——这样做是否正确?如果这样做值得付出努力,也许使用rootScope更好?我只是不太喜欢把太多的事情推到最后rootScope@Agzam您可以构建自己的事件系统,或者使用其中一个事件库,但它是否真的提供了Angular已经提供的任何价值?请记住,任何自定义或外部需求都可以很好地处理Angular(例如$digest cycles),因此它不可能是简单的即插即用。