Diretiva ng-repeat do AngularJS

Definição e uso

ng-repeat A diretiva repetirá um grupo de HTML uma quantidade específica de vezes.

Cada item da coleção HTML será repetido uma vez.

A coleção deve ser um array ou um objeto.

Nota:Cada instância repetida obterá seu próprio escopo, composto pelo item atual.

Se você tiver uma coleção de objetos:ng-repeat As diretivas são muito adequadas para criar tabelas HTML, exibindo uma linha de tabela para cada objeto e exibindo um dado de propriedade para cada objeto. Veja o exemplo a seguir.

Exemplo

Exemplo 1

Escreva um título para cada item do array records:

<body ng-app="myApp" ng-controller="myCtrl">
<h1 ng-repeat="x in records">{{x}}</h1>
<script>
var app = angular.module("myApp", []);
app.controller("myCtrl", function($scope) {
    $scope.records = [
        "Alfreds Futterkiste",
        "Berglunds snabbköp",
        "Centro comercial Moctezuma",
        "Ernst Handel",
    ]
});
</script>
</body>

Experimente você mesmo

Exemplo 2

Escreva uma linha de tabela para cada item do array records:

<table ng-controller="myCtrl" border="1">
    <tr ng-repeat="x in records">
        <td>{{x.Name}}</td>
        <td>{{x.Country}}</td>
    </tr>
</table>
<script>
var app = angular.module("myApp", []);
app.controller("myCtrl", function($scope) {
    $scope.records = [
       {
            "Name" : "Alfreds Futterkiste",
            "Country" : "Germany"
        },{
            "Name" : "Berglunds snabbköp",
            "Country" : "Sweden"
        },{
            "Name" : "Centro comercial Moctezuma",
            "Country" : "Mexico"
        },{
            "Name" : "Ernst Handel",
            "Country" : "Austria"
        }
    ]
});
</script>

Experimente você mesmo

Exemplo 3

Escreva uma linha de tabela para cada propriedade do objeto:

<table ng-controller="myCtrl" border="1">
    <tr ng-repeat="(x, y) in myObj">
        <td>{{x}}</td>
        <td>{{y}}</td>
    </tr>
</table>
<script>
var app = angular.module("myApp", []);
app.controller("myCtrl", function($scope) {
    $scope.myObj = {
        "Name" : "Alfreds Futterkiste",
        "Country" : "Germany",
        "City" : "Berlin"
    }
});
</script>

Experimente você mesmo

Sintaxe

<elemento ng-repeat="expressão</elemento>

Todos os elementos HTML suportam.

Parâmetros

Parâmetros Descrição
expressão

Expressão que especifica como percorrer uma coleção.

Exemplo de expressão válida:

x em registros

(key, value) in myObj

x em registros track by $id(x)