Ejemplo factory angularjs
factory angularjs
by Fabian Allel
HTML
<div ng-app="myApp">
<div ng-controller="Padre1Controller">
<div ng-repeat="var in variable">{{var.title}}</div>
</div>
</div>
JavaScript
var myApp = angular.module('myApp', []);
myApp.controller('Padre1Controller', function ($scope, FabricaServicio) {
$scope.variable = FabricaServicio.getJsonStatic();
//para hacer la llamada a una url o un directorio dentro del proyecto
//FabricaServicio.getUrlJson($scope.query).then(function (resultado) {
// $scope.variable= resultado.data;
//};
});
//fabrica == factory en ingles
myApp.factory('FabricaServicio', function ($q, $http) {
//si quieres realizar la llamad dentro de un directorio del proyecto donde esté el archivo json o una url de servicio que devuelva el json
var getUrlJson = function () {
var deferred = $q.defer();
$http.get('http://ejemplourljson').success(function (result) {
deferred.resolve(result);
}).error(function (data, status, headers, config) {
deferred.reject();
});
return deferred.promise;
};
var getJsonStatic = function () {
var devuelve = [{
title: 'English',
grade: 'A'
}, {
title: 'Maths',
grade: 'A'
}, {
title: 'Science',
grade: 'B'
}, {
title: 'Geography',
grade: 'C'
}];
return devuelve;
};
return {
getUrlJson: getUrlJson,
getJsonStatic: getJsonStatic
};
});