2013-07-31 12 views
24

Ho un'applicazione angolare JS, che ha un numero di immagini, da una matrice.Immagine non trovata prima che angular abbia aggiornato il documento

Il mio modello simile a questa

$scope.images = [ {url: 'someimage.png', desc: 'some desc'}, {url: 'someimage.png', desc: 'some desc'} ] 

A mio parere, ho iterare questo, per visualizzare tutte le immagini.

<ul> 
    <li ng-repeat="image in images" ><img src="{{image.url}}" /></li> 
</ul> 

Questo funziona, ma ottengo alcuni errori di pagina, che dicono

404 Not Found - http://localhost/{{image.url}} 

Le immagini vengono visualizzate in modo corretto, quindi è chiaramente le immagini stanno cercando di essere caricato prima angolare ha analizzato per documentare ottenere è pronto. Anche i miei script sono in testa, quindi non dovrebbe essere un errore di ordinamento javascript.

risposta

44

Il problema qui era che dovrei usare ng-src e non src, in modo che proverà a visualizzare l'immagine solo quando Angular è pronto.

Quindi, il codice corretto sembra

<ul> 
    <li ng-repeat="image in images" ><img ng-src="{{image.url}}" /></li> 
</ul> 
+1

amo angolare così tanto. – adamdport

+0

Questo mi ha salvato la giornata. – Matheno

+0

durante l'iterazione di un ampio set di dati, alcune immagini vengono caricate e alcune immagini non vengono caricate utilizzando ng-src e passando l'URL dell'immagine. Immagino sia dovuto al comportamento asincrono di JS. Quindi c'è qualche soluzione per risolvere questo problema. –

Problemi correlati