Im пытается вызвать функцию заводскую от контроллера, используя значения, но им получать TypeError Controllercodeиспользовать значения для вызова функции фабрики в угловом
$scope.onButtonHovered = function(event){
console.log("event.descriptorName "+ event.descriptorName);
console.log("SERVICES[event.descriptorName].name "+ SERVICES[event.descriptorName].name);
$scope.service = SERVICES[event.descriptorName].name;
$scope.btnOptions = $scope.service.buttonOptions();
}
печатает: event.descriptorName HOME
УСЛУГИ [event.descriptorName] .name homeService
VM92009 angular.js: 13642 Ty peError: $ scope.service.buttonOptions не является функцией
Услуги:
angular.module('ht.constants').
value('SERVICES',{
HOME : {name : 'homeService', descriptor : {}},
CONTACT: {name : 'contactService', descriptor : {}},
});
завод:
angular.module('ht.home').
factory('homeService', [ HomeService]);
var homeService= {}
function HomeService() {
homeService.buttonOptions = function(){
if(homeData==null)
init();
return homeData;
}
return homeService;
}
Im пытается вызвать несколько служб с помощью одного контроллера, во время печати im получать ожидаемое, но когда я добавляю то же самое с заводской функцией im, получая ошибку. Спасибо за помощь
Что такое 'событие'? –
нажмите кнопку пользовательского события –
преобразуйте 'значение()' в службу вместо этого и верните соответствующую другую службу оттуда. Был бы похож на главную услугу, и вам не нужно было вводить другие в контроллер – charlietfl