Achei ótimo esse recurso do ng-repeat do Angular, só me veio uma dúvida agora:
Como eu iteraria pra jogar pra minha view, através de expressões angulares, um JSON que passasse como também um objeto, o valor de alguma de suas chaves? Por exemplo:
var grupos =
[
{
_id: 1,
integrantes:
[
{
'nome': 'Renan',
'e-mail': 'renan@exemplo.com'
},
{
'nome': 'Edgar',
'e-mail': 'edgar@exemplo.com'
}
],
},
{
_id: 2,
integrantes:
[
{
'nome': 'Arthur',
'e-mail': 'arthur@exemplo.com'
},
{
'nome': 'José',
'e-mail': 'jose@exemplo.com'
}
]
},
{
_id: 3,
integrantes:
[
{
'nome': 'Max',
'e-mail': 'max@exemplo.com'
}
]
},
];
E se eu quisesse alimentar minha view com esse JSON em uma tabela, por exemplo, como eu garantiria que minha angular expression teria acesso ao atributo grupos.integrantes.nome, por exemplo?
Andei pensando um pouco aqui, e até agora tenho:
grupos-controller.js:
angular.module('meuapp').controller('GruposController', function($scope, $http){
$scope.grupos = [];
$http.get('data/grupos')
.success(function(grupos,){
$scope.grupos = grupos;
})
.error(function(error){
console.log('erro na requisição ajax de grupos');
});
});
e em minha view:
...
<div ng-controller="GruposController">
<h1>GRUPOS</h1>
<div ng-repeat="grupo in grupos">
<h2>Grupo {{grupo._id}}</h2>
<p></p>
</div>
</div>
Até aí eu consigo exibir os três grupos com suas IDs que criei em /data/grupos normalmente na minha view. Fica assim:
GRUPOS
Grupo 1
Grupo 2
Grupo 3
Mas como fazer para que consiga também exibir cada integrante dos grupos, com seus respectivos Nomes e E-mails, por exemplo? Algo assim:
GRUPOS
Grupo 1
Renan, renan@exemplo.com
Edgar, edgar@exemplo.com
Grupo 2
Arthur, arthur@exemplo.com
José, jose@exemplo.com
Grupo 3
Max, max@exemplo.com