为角度服务/工厂提供配置的最佳方法是什么。例如推送api键?我想编写一个可以在多个推送帐户中重复使用的模块。
提前致谢
答案 0 :(得分:4)
只需创建另一项服务并将其作为依赖项传递。
angular.module('myApp', [])
.factory('ProviderConfigService', function() {
return {
apiKey: '...'
}
})
.factory('ProviderService', function(ProviderConfigService) {
return {
doSomethingWithApi: function() {
var apiKey = ProviderConfigService.apiKey
}
}
});
答案 1 :(得分:1)
我通常只提供注射常数:Angular Documentation
以下是代码示例:
angular
.module('myApp', [])
.constant('apiKey', 'abc12345')
.controller('myController', function($scope, apiKey) {
$scope.key = apiKey;
});
和a JSFiddle(尽管这会注入一个控制器进行演示,但它对服务的效果也很好。)
常量而不是更庞大的服务的一大好处是你可以将它们注入config
块。