是否可以使用$ decorator拦截除常量之外的任何服务?

时间:2016-07-31 08:37:59

标签: angularjs

我尝试使用其中一种服务方法value()。它对我有用

{{1}}

我想了解更多有关$ provide.decorator以及它如何拦截工厂,服务和提供商等其他服务方法的信息。

1 个答案:

答案 0 :(得分:1)

onRendered允许您拦截角度工作流程中的服务创建。有几种用例需要考虑使用它:

  1. 向第三方服务添加功能
  2. 选择特定服务实施
  3. 用于缓存或调试目的的包装服务
  4. 假设你有一个像这样的'alertService':

    decorator

    我们假设这是一个外部服务(例如第三方),并且您想添加一个允许用户取消或继续操作的'confirm'方法。在这种情况下,您可以使用class AlertService { public alert(message: string) : void { return alert(message); } module.service("alertService", AlertService); 扩展服务,如下所示:

    decorator

    查看angular的文档以供进一步研究:https://docs.angularjs.org/guide/decorators