angular的服务装饰器 decorator
$provide.decorator('serviceName',['$delegate',function($delegate){
// $delegate 指代服务本身
}])
// 服务装饰器
app.config(['$provide', 'serviceNameProvider', function() {
$provide.decorator('serviceName', ['$delegate', function($delegate) {
// $delegate 指代服务本身$delegate.sum = function(c + d) {
return 10 + c + d;}// 装饰完服务后必须要返回$delegatereturn $delegate; }])
}])
装饰器的作用: 对服务进行修改和扩展
// 服务装饰器: 对服务进行修改和扩展
app.config(['$provide', 'serviceNameProvider', function() {
$provide.decorator('serviceName', ['$delegate', function($delegate) {
// 扩展服务 添加一个方法$delegate.minus = function (a, b) {
return a - b;};// 修改服务 对原有的方法重新定义$delegate.sum = function (c, d) {
return c + d;};// 删除原先的属性,视觉上的删除而已$delegate.root = undefined;return $delegate;}])
}])