基本上我希望能够在发生某些事情时从服务进行广播。 实现这一目标的最佳方法是什么?
答案 0 :(得分:1)
如果是由您的控制器发起的异步调用,请使用promises(谷歌上的q并解决)。
如果由于某些事情未能从您的控制器启动而导致某些事情发生,请使用watch。您可以指定范围变量以指向您的服务,以观察服务公开的变量(并在视图中绑定它们)。
第二种模式的代码理念:
function MyController($http, MyService) {
$scope.myService = MyService;
$scope.$watch("myService.aVariableInTheService", function() {
console.log("aVariableInTheService has changed!");
}
}
在视图中:
<div>A variable is {{myService.aVariableInTheService}}</div>