2012-10-16 8 views
105

के साथ अनुरोध प्राप्त करें मैं AngularJS नियंत्रक में HTML में प्रस्तुत की जाने वाली छवि की स्रोत स्ट्रिंग संग्रहीत कर रहा हूं, हालांकि यह कोणीय नियंत्रक प्रारंभ होने से पहले 404 उत्पन्न करता है।छवि AngularJS

<div ng-controller="Cont"> 
     <img src="{{imageSource}}"> 
</div> 

कोणीय नियंत्रक:

var Cont = function($scope) { 
     $scope.imageSource = '/tests.png'; 
} 

और त्रुटि मैं (%7D%7D टेम्पलेट में {{ से मेल खाती है)

यहाँ एचटीएमएल है।

GET https://localhost:9000/%7B%7BimageSource%7D%7D 404 (Not Found) 

मैं इसे कैसे होने से रोक सकता हूं? यही है, जब कोणीय नियंत्रक शुरू किया गया है केवल छवि लोड करें?

उत्तर

227

देख the documentation अधिक जानकारी के लिए एनजी-src के साथ अपने स्रोत के बजाय ऐसे:

तरह कोणीय मार्कअप का उपयोग करना {{हैश}} एक src विशेषता में काम नहीं करता सही: ब्राउज़र से लायेगा शाब्दिक पाठ {{हैश}} के साथ यूआरएल जब तक कोणीय {{हैश}} के अंदर अभिव्यक्ति को प्रतिस्थापित नहीं करता है। ngSrc निर्देश इस समस्या को हल करता है।

<div ng-controller="Cont"> 
     <img ng-src="{{imageSource}}"> 
</div> 
+0

हे धन्यवाद ... यह काम किया! – subzero

+2

डेटा-एनजी-नियंत्रक और डेटा-एनजी-src का उपयोग करना बेहतर है ताकि HTML मान्य हो। – Juampy

6

कोई स्टाइल पृष्ठभूमि छवि के लिए समाधान खोज कर रहा है, तो इस का उपयोग करें:

<div ng-style="{'background-image': 'url({{ image.source }})'}">...</div> 
+0

एनजी स्टाइल के साथ इंटरपोलेशन का उपयोग करना बुरा अभ्यास है। संदर्भ: https://docs.angularjs.org/api/ng/directive/ngStyle –