2016-06-13 7 views
0

Ich verwende Bedingungsoperator, um die Quelle eines Bildes festzulegen. Bild ist aus der Datenbank und es wird eine Base64-Zeichenfolge sein. Ich bekomme einen weiteren booleschen aus der Datenbank, ob der Benutzer sein Profilfoto eingestellt hat oder nicht. Wenn er ein Bild einstellt, stelle ich als Quelle sonst eine lokale Svg-Datei ein. unten ist mein Code-Snippet.ng-src funktioniert nicht für Bildquelle mit bedingten Operator

<img id="profilePic" ng-src="{{ photoSet ? 'data:image/jpeg;base64,userPhoto': 'Images/profile.svg' }}"/> 

aber beiden Fällen ist es nicht funktioniert. Wo mache ich falsch?

+0

das funktioniert –

Antwort

1

Sie müssen geschweifte Klammern verwenden, der Wert erreicht ng-src, um sicherzustellen.

Sie können eines der folgenden Elemente verwenden.

Userphoto sollte sowohl den base64-Wert in den Fällen enthalten

<img id="profilePic" ng-src="{{photoSet}} ? 'data:image/jpeg;base64,{{userPhoto}}': 'Images/profile.svg'"/> 

ODER

<img ng-if="photoSet" id="profilePic" ng-src="data:image/jpeg;base64,{{userPhoto}}"/> 
<img ng-if="!photoSet" id="profilePic" ng-src="Images/profile.svg"/> 
+0

Hallo, Danke für die Antwort. Die öffnenden und schließenden Klammern passen nicht zu Ihrem Code. Das funktioniert auch nicht. –

+0

Die erste funktioniert immer noch nicht –

+1

das funktioniert –

0

Sie müssen den Pfad in der folgenden Art und Weise und prüfen, ob die Bedingungen in ng-if hinzuzufügen.

<img ng-if="photoSet" ng-src="1stImagePathHere" /> 
<img ng-if="!photoSet" ng-src="2ndImagePathHere" /> 
+0

Hallo Danke, das ist in Ordnung, aber ich brauche mit bedingten Operator. –

+0

Bitte poste etwas mehr als nur ein paar Zeilen Code. Erläutern Sie Ihre Antwort usw. Sie können hier mehr darüber lesen, wie Sie eine Frage beantworten können: [Antwort] – thepio

Verwandte Themen