Я пытаюсь понять концепцию фабрики и сервиса в угловом. У меня есть следующий код под контроллером
init();
function init(){
$http.post('/services', {
type : 'getSource',
ID : 'TP001'
}).
success(function(data, status) {
updateData(data);
}).
error(function(data, status) {
});
console.log(contentVariable);
};
function updateData(data){
console.log(data);
};
Этот код работает нормально. Но когда я пересылаю $ http service на завод, я не могу вернуть данные обратно контроллеру.
studentApp.factory('studentSessionFactory', function($http){
var factory = {};
factory.getSessions = function(){
$http.post('/services', {
type : 'getSource',
ID : 'TP001'
}).
success(function(data, status) {
return data;
}).
error(function(data, status) {
});
};
return factory;
});
studentApp.controller('studentMenu',function($scope, studentSessionFactory){
$scope.variableName = [];
init();
function init(){
$scope.variableName = studentSessionFactory.getSessions();
console.log($scope.variableName);
};
});
Есть ли какие-либо преимущества использования завода, так как $ HTTP работает даже в контроллере
Спасибо Брайан. Теперь имеет смысл. Я получаю ошибку «missing» после ошибки списка свойств. Ошибка остается после закрытия добавления закрытой парантезы для возврата на заводской основе. –
Оки зафиксировал часть скобки. Теперь код 'studentApp.factory ('studentSession', функция ($ HTTP) { возвращение { getSessions: функция() { возвращение $ http.post ('/ услуги', { типа: 'getSource', ID: 'TP001' }); } } }); 'Теперь появилась ошибка с сообщением' Ошибка b не является функцией'. У меня нет функции b. Любое предложение о том, что вызывает эту ошибку? –
Спасибо. Я пропустил эту скобу. Что касается «b не является функцией», используете ли вы какую-то классификацию кода или uglification? –