J'essaie de traiter le problème de la portée à l'intérieur d'une boucle ng-repeat - j'ai parcouru pas mal de questions mais je n'ai pas tout à fait réussi à faire fonctionner mon code.
Code contrôleur:
function Ctrl($scope) {
$scope.lines = [{text: 'res1'}, {text:'res2'}];
}
Vue:
<div ng-app>
<div ng-controller="Ctrl">
<div ng-repeat="line in lines">
<div class="preview">{{text}}{{$index}}</div>
</div>
<div ng-repeat="line in lines">
<-- typing here should auto update it's preview above -->
<input value="{{line.text}}" ng-model="text{{$index}}"/>
<!-- many other fields here that will also affect the preview -->
</div>
</div>
</div>
Voici un violon: http://jsfiddle.net/cyberwombat/zqTah/
En gros, j'ai un objet (c'est un générateur de flyers) qui contient plusieurs lignes de texte. Chaque ligne de texte peut être modifiée par l'utilisateur (texte, police, taille, couleur, etc.) et je souhaite en créer un aperçu. L'exemple ci-dessus montre uniquement le champ de saisie pour saisir du texte et je voudrais que cela mette à jour automatiquement / au fur et à mesure que vous tapez le div d'aperçu, mais il y aura beaucoup plus de contrôles.
Je ne suis pas non plus sûr d'avoir le bon code pour l'index de boucle - est-ce la meilleure façon de créer un nom de modèle ng à l'intérieur de la boucle?