这种类型的装饰器适用于 服务 和工厂。我希望它也能与供应商合作。我尝试了以下方法来装饰 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 - 在 angularjs 中如何装饰 $stateProvider Provider?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24272711/