J'essaye d'obtenir la première valeur ("source") de ce fichier json

{
    "slides": [{
        "source": "images/Carousel-01.jpg",
        "title": "Slide 1 Title",
        "caption": "Slide 1 Description"
    }, {
        "source": "images/Carousel-02.jpg",
        "title": "Slide 2 Title",
        "caption": "Slide 2 Description"
    }]
}

J'essaie d'obtenir la valeur avec angular en utilisant ce code

<div ng-repeat="img in slides">
   <img ng-src="{{img.slides[0].source}}" />
</div>

Mais montrez-moi toujours le champ vide je ne sais pas bien comment obtenir seulement le premier ou le dernier. Je ne fais pas si cela est possible, j'essaye de créer un carrousel.

0
Camilo Rincon 14 juil. 2015 à 05:37

2 réponses

Meilleure réponse

Si vous n'avez besoin que de la première image, vous n'avez pas besoin de ng-repeat

Essayez comme ça

<img ng-src="{{slides[0].source}}" />
2
Anik Islam Abhi 14 juil. 2015 à 21:12

L'indicateur ng-repeat signifie qu'il parcourt tous les objets (indiqués par {}) dans le tableau des slides

Ainsi, lorsque vous appelez img.slides [0] .source:

  1. img est l'objet de diapositive actuel.
  2. Vous dites alors à la boucle de rechercher un autre tableau appelé slides dans l'objet de diapositive actuel (appelé img).
  3. Vous dites à la boucle d'obtenir le premier élément de ce tableau [0]
  4. Vous indiquez au code de rechercher la propriété source dans cet élément.

Les étapes 2 et 3 sont incorrectes pour vos données. Il n'y a pas un tableau de diapositives à l'intérieur de chaque diapositive.

Vous avez juste besoin de {{img.source}}

0
user2782001 14 juil. 2015 à 02:46