AngularJS é um framework JavaScript para desenvolvimento de aplicações web. No desenvolvimento de páginas web dinâmicas, é muito importante a utilização de laços. Qual a diretiva desse framework que permite repetir um elemento DOM uma vez, para cada item de uma coleção?
- A)ng-for
Errada, porque ng-for nao é a diretiva usada no AngularJS para repeticao de elementos no DOM.
- B)ng-while
Errada, porque ng-while nao existe como diretiva padrao do AngularJS para esse fim.
- C)ng-repeat
Certa, porque ng-repeat repete um elemento DOM para cada item de uma coleção.
- D)ng-iterate
Errada, porque ng-iterate nao é uma diretiva do AngularJS.
- E)ng-loop
Errada, porque ng-loop nao corresponde a uma diretiva valida do AngularJS.
Gabarito: C
No AngularJS, quando voce quer repetir um bloco de HTML para cada item de uma lista, a diretiva classica é a que faz exatamente esse trabalho de iteracao no DOM. Ela percorre a coleção e cria uma repetição do elemento para cada valor encontrado, o que é perfeito para montar listas, tabelas e menus dinamicos sem escrever HTML duplicado na mao. Essa é justamente a ideia cobrada na questao: um laço aplicado ao template. No AngularJS, a diretiva usada para esse comportamento é a ng-repeat. Ela faz o papel de "for de interface", repetindo o elemento para cada item do array ou coleção. As outras alternativas inventam nomes que não pertencem ao AngularJS. Em prova, isso costuma aparecer como uma mistura de nomes parecidos com comandos de outras linguagens, mas aqui a sintaxe correta é a diretiva própria do framework. Então, o gabarito C está correto porque ng-repeat é a diretiva destinada a repetir elementos DOM para cada item de uma coleção.