У меня есть следующий код. Линия console.log(apiServerConstants.url)
на заводе возвращает undefined
, когда я добавляю AuthService в другой код. Зачем?Угловая конфигурация не работает
angular.module("webclient.constants", [])
.constant("apiServerConstants", {
"url": "http://localhost:8080"
});
angular.module('webclient', [
// some stuff
'webclient.constants'
])
.config(
// some code
});
angular.module('webclient')
.factory('AuthService', ['$http', 'apiServerConstants', 'localStorageService', function($http, localStorageService, apiServerConstants) {
return {
authenticate: function(data) {
// some code
},
login: function(data, apiServerConstants) {
console.log(data);
console.log(apiServerConstants.url);
// some more code
}
}
}]);
Возможно, потому, что вы вызываете 'login' только с одним аргументом. – zeroflagL
Имеет смысл. Поскольку я возвращаю объект, а не результат функции, вызывающий элемент 'login()' должен передать его, или я удаляю из params по причинам сферы. – alphadogg
Я предполагаю, что сигнатура функции должна быть 'login: function (data) {', потому что у вас уже есть 'apiServerConstants'. – zeroflagL