Kev*_*eal 147 javascript decorator angularjs angularjs-decorator
我很好奇AngularJS中究竟是什么装饰者.除了AngularJS文档中的模糊以及YouTube视频中的简短(虽然有趣)之外,在线提供的信息并不多.
正如Angular家伙所说的那样,装饰者是:
服务的装饰,允许装饰者拦截服务实例的创建.返回的实例可以是原始实例,也可以是委托给原始实例的新实例.
我真的不知道这意味着什么,我不确定为什么要将这个逻辑与服务本身分开.例如,如果我想在不同条件下返回不同的东西,我会将不同的参数传递给相关函数或使用另一个共享该私有状态的函数.
我仍然是一个AngularJS菜鸟,所以我确定这只是我所捡到的无知和/或坏习惯.
tam*_*are 217
一个很好的用例$provide.decorator
是当你需要对你的模块所依赖的某些第三方/上游服务进行微小的"调整",同时保持服务的完整性(因为你不是服务的所有者/维护者).这是关于plunkr的演示.
JBl*_*and 66
装饰器使我们能够分离出跨领域的问题,并允许服务保留单一责任原则,而不必担心"基础设施"代码.
装饰的实际用途:
在所有这些情况下,我们将服务中的代码限制为其主要职责.
Dai*_*wei 10
decorator
可以拦截由其创建的服务实例factory, service, value, provider
,并提供更改一些instance(service)
不可配置/选项的选项.
例如,它还可以提供用于测试目的的模拟实例$http
.
归档时间: |
|
查看次数: |
61023 次 |
最近记录: |