I have created an angular service using factory but when I call my service I see in the browser console that my service is being called two times and I didn't know why?
This my service code: enqueteurService.js
'use strict';
appMain.factory('enqueteur', function($http, $log,$q) {
var deffered = $q.defer();
var data = [];
var enqueteur = {};
enqueteur.async = function() {
$http.get('/Gnrqst/enqueteurs/liste-enqueteurs.do')
.success(function (response) {
data = response;
$log.log(response);
deffered.resolve();
});
return deffered.promise;
};
enqueteur.getAllEnqueteurs = function() { return data; };
return enqueteur;
});
And this is my controller code : enqueteurController.js
'use strict' ;
appMain.controller('EnqueteurController', ['$scope','$http','$log','enqueteur', function ($scope,$http,$log,enqueteur) {
enqueteur.async().then(function(data) {
$scope.enqueteurs = enqueteur.getAllEnqueteurs();
});
}]);
And this is the part in my jsp page where I use my service :
<tbody>
<tr ng-repeat="enqueteur in enqueteurs">
<td>{{enqueteur.id}}</td>
<td>{{enqueteur.nom}}</td>
<td>{{enqueteur.prenom}}</td>
<td>{{enqueteur.telephone}}</td>
<td>{{enqueteur.email}}</td>
</tr>
</tbody>
My scripts are :
<script src="<c:url value="/resources/js/angular.js" />"></script>
<!-- ui-bootstrap js -->
<script src="<c:url value="/resources/js/ui-bootstrap.js" />"></script>
<!-- App js -->
<script src="<c:url value="/resources/js/app.js" />"></script>
<!-- enqueteur services js -->
<script src="<c:url value="/resources/js/services/enqueteurService.js" />"></script>
<!-- enqueteurController js -->
<script src="<c:url value="/resources/js/enqueteurController.js" />"></script>
My code works well, but in the browser console, I see that my service is being called twice? Can someone explain to me why?
This the console log :