当前位置: 代码迷 >> 综合 >> angular入门 - 服务装饰器 decorator
  详细解决方案

angular入门 - 服务装饰器 decorator

热度:38   发布时间:2023-11-08 03:16:26.0

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;}])
}])