Я хотел бы знать, есть ли способ сделать конфигурацию поставщика уникальным не по всему приложению, а только через модуль, который его настраивает.Поставщик Angularjs с различными конфигурациями в разных модулях
Например, у меня есть модуль «ядро», в котором содержится определение поставщика. Затем у меня есть модули «module1» и «module2», которые используют провайдер, но должны настроить его определенным образом для конкретного модуля.
Что происходит со мной, так это то, что конфигурация, выполненная в последнем модуле, переопределяет конфигурацию, выполняемую во всех других модулях, которые используют провайдер в приложении.
Я сделал простую plunker иллюстрировать это:
var app = angular.module('app', ['module1','module2']);
angular.module('core',[])
.provider('movie', function() {
var version;
return {
setVersion: function (value) {
version = value;
},
$get: function() {
return {
title: 'The Matrix' + ' ' + version
}
}
}
});
angular.module('module1',['core'])
.config(function (movieProvider) {
movieProvider.setVersion('Reloaded');
})
.controller('ctrl1', function ($scope,movie) {
$scope.title = movie.title;
$scope.module = 'module1';
});
angular.module('module2',['core'])
.config(function (movieProvider) {
movieProvider.setVersion('Revolutions');
})
.controller('ctrl2', function ($scope,movie) {
$scope.title = movie.title;
$scope.module = 'module2';
});
http://plnkr.co/edit/BI5nhmcdgzQZfZo56Koh?p=preview