AngularJS - Diretivas
As diretivas AngularJS são usadas para estender o HTML. Eles são atributos especiais que começam comng-prefixo. Vamos discutir as seguintes diretivas -
ng-app - Esta diretiva inicia um aplicativo AngularJS.
ng-init - Esta diretiva inicializa os dados do aplicativo.
ng-model - Esta diretiva define o modelo que é variável a ser usado no AngularJS.
ng-repeat - Esta diretiva repete os elementos HTML para cada item de uma coleção.
diretiva ng-app
A diretiva ng-app inicia um aplicativo AngularJS. Ele define o elemento raiz. Ele inicializa ou inicializa automaticamente o aplicativo quando a página da web que contém o aplicativo AngularJS é carregada. Ele também é usado para carregar vários módulos AngularJS no aplicativo AngularJS. No exemplo a seguir, definimos um aplicativo AngularJS padrão usando o atributo ng-app de um elemento <div>.
<div ng-app = "">
...
</div>
diretiva ng-init
A diretiva ng-init inicializa os dados do aplicativo AngularJS. É usado para atribuir valores às variáveis. No exemplo a seguir, inicializamos uma série de países. Usamos a sintaxe JSON para definir a variedade de países.
<div ng-app = "" ng-init = "countries = [{locale:'en-US',name:'United States'},
{locale:'en-GB',name:'United Kingdom'}, {locale:'en-FR',name:'France'}]">
...
</div>
diretiva ng-model
A diretiva ng-model define o modelo / variável a ser usado no aplicativo AngularJS. No exemplo a seguir, definimos um modelo denominado nome .
<div ng-app = "">
...
<p>Enter your Name: <input type = "text" ng-model = "name"></p>
</div>
diretiva ng-repeat
A diretiva ng-repeat repete os elementos HTML para cada item de uma coleção. No exemplo a seguir, iteramos a matriz de países.
<div ng-app = "">
...
<p>List of Countries with locale:</p>
<ol>
<li ng-repeat = "country in countries">
{{ 'Country: ' + country.name + ', Locale: ' + country.locale }}
</li>
</ol>
</div>
Exemplo
O exemplo a seguir mostra o uso de todas as diretivas mencionadas acima.
testAngularJS.htm
<html>
<head>
<title>AngularJS Directives</title>
</head>
<body>
<h1>Sample Application</h1>
<div ng-app = "" ng-init = "countries = [{locale:'en-US',name:'United States'},
{locale:'en-GB',name:'United Kingdom'}, {locale:'en-FR',name:'France'}]">
<p>Enter your Name: <input type = "text" ng-model = "name"></p>
<p>Hello <span ng-bind = "name"></span>!</p>
<p>List of Countries with locale:</p>
<ol>
<li ng-repeat = "country in countries">
{{ 'Country: ' + country.name + ', Locale: ' + country.locale }}
</li>
</ol>
</div>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js">
</script>
</body>
</html>
Resultado
Abra o arquivo testAngularJS.htm em um navegador da web. Digite seu nome e veja o resultado.