Salve a tutti
mi sto addentrando nel mondo di angularjs iniziando con la versione 1 per poi passare alle successive . Ho gia' una certa esperienza con javascript "classic".
Al momento non riesco a padroneggiare bene ngresource
faccio una chiamata con questa libreria al server per passare oltre ad i soliti dati, la mail che mi serve per recuperare la foto da gravatar per la chiamata a gravatar usa una apposita directive , che per� si attiva prima che mi ritornino i valori dal db.
Non so', se devo in qualche maniera posticipare l'attivazione della directive ? attivarla nel $resource ?
Non s�! ho fatto varie prove ma non ne sto venendo fuori
qualcuno puo darmi una mano ?
grazie
codice:.factory('contacts', function($resource){ var resource = $resource('http://localhost/Angular/Backend/contats/:id' , {id: '@id'}, { update: {method: 'PUT'} }); return { get: function(success, error){ return resource.query(); }, find: function(id, success, error){ return resource.get({id: id}, success, error); }, create: function(){ return new resource(); }, destroy: function(id, success, error){ resource.delete({id: id}); } }; }) .directive('gravatar', function($timeout){ var defaultGravatarUrl = "http://www.gravatar.com/avatar/000?s=200"; var regex = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; function getGravatarUrl(email) { alert("email="+email); if (!regex.test(email)) return defaultGravatarUrl; return 'http://www.gravatar.com/avatar/' + md5(email) + ".jpg?s=100"; } function linker(scope) { scope.url = getGravatarUrl(scope.email); scope.$watch('email', function (newVal, oldVal) { if (newVal !== oldVal) { scope.url = getGravatarUrl(scope.email); } }); } return { template: '<img ng-src="{{url}}"></img>', restrict: 'EA', replace: true, scope: { email: '=' }, link: linker }; }) html: <h1><div class="img-circle"><gravatar email="userEmail" size="90" ></gravatar></div> {{contact.name}}</h1>

Rispondi quotando