在angularjs中如何装饰$stateProvider Provider?

前端之家收集整理的这篇文章主要介绍了在angularjs中如何装饰$stateProvider Provider?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这种类型的装饰器与服务和工厂一起工作.我希望它也能与提供商合作.我尝试过以下方法来装饰ui-router的$stateProvider:
app.config(function($provide) {
  $provide.decorator('$state',function ($delegate) {
    return $delegate;
  });
});

Here’s a demo plunk

它应该工作一样吗?请参阅plunk @ http://plnkr.co/edit/rSFo1xCoRHjWmrSjJBN1
var app = angular.module('plunker',[]);

app.provider('provider',function () {
  this.$get = function () { 
    var provider = {};
    var value = 'test';

    provider.get = function() {
      return value;
    }

    provider.set = function(param) {
      value = param;
    }
    return provider;
  }
});

app.config(function($provide) {
  $provide.decorator('provider',function ($delegate) {
    $delegate.set('delegate');
    return $delegate;
  });
});

app.controller('MainCtrl',function($scope,provider) {
  $scope.name = provider.get();
});

猜你在找的Angularjs相关文章