angular入门 - 服务装饰器 decorator

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;
		}
		
		// 装饰完服务后必须要返回$delegate
		return $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;
	}])
}])
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值