/ / AngularJS: erreur d'analyse syntaxique lors de l'utilisation d'une expression en tant que paramètre d'une fonction - javascript, angularjs, expression

AngularJS: erreur d'analyse syntaxique lors de l'utilisation de l'expression en tant que paramètre d'une fonction - javascript, angularjs, expression

Je reçois une erreur en essayant d’analyser ce balisage. En gros, j’ai besoin d’utiliser une expression comme paramètre de la fonction dans le ng-click, mais ça ne me laisse pas faire. Si je n’utilise pas d’expression, le src de la img src="/images/{{image.media.m}}" ng-model="image.media.m" sera effacé en cliquant sur l'album img provoquant la disparition de l'image. Cette erreur provoque mon saveToAlbum fonctionner pour ne pas fonctionner comme il se doit ..

Quelle serait la bonne façon d'écrire cela, je me le demande? Et pourquoi n’est-ce pas permis?

<ul class="images-list">
<li ng-repeat="image in imageGroup" ng-controller="albumsCtrl">
<img src="/images/{{image.media.m}}" ng-model="image.media.m">
<div class="topDiv">
<img src="img/album.png" ng-click="saveToAlbum({{image.media.m}}, undefined)">
</div>
<div class="bottomDiv" ng-controller="favoritesCtrl">
<img src="/images/img/favorites.png" ng-click="addToFavorites(image.media.m)">
</div>
</li>
</ul>

L'erreur:

Error: [$parse:syntax] http://errors.angularjs.org/1.3.10/$parse/syntax?p0=%7B&p1=invalid%20key&p2=14&p3=saveToAlbum(%7B%7Bimage.media.m%7D%7D%2C%20undefined)&p4=%7Bimage.media.m%7D%7D%2C%20undefined)
at Error (native)
at https://ajax.googleapis.com/ajax/libs/angularjs/1.3.10/angular.min.js:6:417
at hb.throwError (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.10/angular.min.js:190:254)
at hb.object (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.10/angular.min.js:199:435)
at hb.primary (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.10/angular.min.js:189:308)
at hb.unary (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.10/angular.min.js:197:82)
at hb.multiplicative (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.10/angular.min.js:196:324)
at hb.additive (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.10/angular.min.js:196:182)
at hb.relational (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.10/angular.min.js:196:48)
at hb.equality (https://ajax.googleapis.com/ajax/libs/angularjs/1.3.10/angular.min.js:195:418) <img src="/images/img/album.png" ng-click="saveToAlbum({{image.media.m}}, undefined)">

Réponses:

3 pour la réponse № 1

utilisez ng-src pour le src = "" et perdez la fonction {{}} i the saveToAlbum