okuznetsov1,
add: function (
vm)
Зачем? Если тебе надо для запроса данные из контроллера newGenerationCommand и newDescription, ну так и передавай их в метод add, а не ссылку на контроллер.
function serviceDataByCommands($http) {
return {
name: 'Commands Service',
add: function (newGenerationCommand, newDescription) {
return $http
.post('addData.php',{genCommand: newGenerationCommand, description: newDescription})
.then(function(response){
return {
id: response.data[0].id,
command: response.data[0].command,
description: response.data[0].description,
completed: response.data[0].completed
}
})
},
get: function () {
return $http.get('getData.php').then(function(response){
return response.data
})
}
serviceDataByCommands
.get()
.then(function(lists) {
vm.lists = lists;
})
.catch(function(error) {
console.log(error);
});
vm.addCommand = function() {
serviceDataByCommands
.add(vm.newGenerationCommand, vm.newDescription)
.then(function(list) {
vm.notify('success','Команда "' + list.command + '" успешно сохранена!');
vm.lists.push(list);
})
.catch(function(error) {
console.log(error);
});
};
Контроллер -- самая зависимая часть в приложении. А в хорошо спроектированных системах, наиболее зависимые части должны быть минимальными, а не максимальными