Veremos el funcionamiento de la directiva ng-repeat de angular, el cual nos permite iterar sobre un elemento en múltiples ocasiones, facilitando al recorrido de objetos que contengan una serie de datos y que nosotros ocupemos mostrar o adquirir alguno de estos.
Suponiendo que tenemos el siguiente objeto y queremos mostrarlo en el navegador:
Nota: el ejemplo es muy simple pero no deja de ser interesante.
$scope.libros = [
{
autor: 'Nombre Autor 1',
libro:'Nombre del libro 1'
},
{
autor: 'Nombre Autor 2',
libro:'Nombre del libro 2'
},
{
autor: 'Nombre Autor 3',
libro:'Nombre del libro 3'
}
];
Primeramente tenemos que crear nuestro html con las directivas correspondientes y hacer instancia de un controlador como se muestra en el siguiente ejemplo:
Nota: recuerden hacer instancia de AngularJS ya sea por CDN o por un archivo local y de igual forma el archivo en donde declaran el modulo y el controlador:
Nota: recuerden hacer instancia de AngularJS ya sea por CDN o por un archivo local y de igual forma el archivo en donde declaran el modulo y el controlador:
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8" />
<title> ng-repeat -> AngularJS </title>
<!-- Aquí esta la referencia de ANGULARJS -->
<!-- La ubicación puede varia a la de ustedes -->
<script src="./vendors/angular.min.js"></script>
<!-- Aquí instanciamos el archivo que tendra nuestro modulo y controlador-->
<!-- El archivo lo declararemos mas abajo con el nombre de app.js-->
<script src="./vendors/js/app.js"></script>
</head>
<body ng-app="app"><!-- Direcctiva para inicializar una aplicación angular-->
<div ng-controller="Ctrl1"><!-- Ahora declaramos nuestro controlador -->
</div>
</body>
</html>
Ahora que ya tenemos nuestro html casi listo crearemos el archivo app.js el cual tendrá el objeto con los datos que mencionamos mas arriba, el modulo y nuestro controlador:
Bueno espero que les sirva, si tienen alguna duda no duden en comentar.
Saludos!!
angular.module('app', []) // recuerda poner el nombre del modulo igual al del ng-app del html
.controller('Ctrl1', ['$scope', function ($scope) {
$scope.libros = [
{
autor: 'Nombre Autor 1',
libro:'Nombre del libro 1'
},
{
autor: 'Nombre Autor 2',
libro:'Nombre del libro 2'
},
{
autor: 'Nombre Autor 3',
libro:'Nombre del libro 3'
}
];
}])
Ahora solo falta agregar el tag en el html en donde se verán los datos, el código quedará de la siguiente manera:
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8" />
<title> ng-repeat -> AngularJS </title>
<script src="./vendors/angular.min.js"></script>
<script src="./vendors/js/app.js"></script>
</head>
<body ng-app="app">
<div ng-controller="Ctrl1">
<h3>ng-repeat</h3>
<!-- Dentro de este div se reflejaran los datos y aquí declaramos nuestra directiva ng-repeat -->
<div ng-repeat="item in libros">
<span>Autor: </span>{{item.autor}}
<span>Libro: </span>{{item.libro}}
</div>
</div>
</body>
</html>
Si todo sale bien, el resultado en nuestro navegador será el siguiente:
Bueno espero que les sirva, si tienen alguna duda no duden en comentar.
Saludos!!

