tutoriais mais recente desenvolvimento web
 

AngularJS Directiva ng-modelo


A directiva ng-modelo liga o valor de controles HTML (input, select, textarea) para dados de aplicativos.


A directiva ng-modelo

Com o ng-model directiva você pode vincular o valor de um campo de entrada para uma variável criada em AngularJS.

Exemplo

<div ng-app="myApp" ng-controller="myCtrl">
    Name: <input ng-model="name">
</div>

<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
    $scope.name = "John Doe";
});
</script>
Tente você mesmo "

Two-Way Binding

A ligação vai nos dois sentidos. Se o usuário altera o valor dentro do campo de entrada, a propriedade AngularJS também irá alterar seu valor:

Exemplo

<div ng-app="myApp" ng-controller="myCtrl">
    Name: <input ng-model="name">
    <h1>You entered: {{name}}</h1>
</div>
Tente você mesmo "

Validar a entrada do usuário

O ng-model directiva pode fornecer validação de tipo de dados de aplicativo (número, e-mail, necessária):

Exemplo

<form ng-app="" name="myForm">
    Email:
    <input type="email" name="myAddress" ng-model="text">
    <span ng-show="myForm.myAddress.$error.email">Not a valid e-mail address</span>
</form>
Tente você mesmo "

No exemplo acima, o tempo será exibido somente se a expressão no ng-show atributo retorna true .

Nota Se a propriedade na ng-model atributo não existir, AngularJS irá criar um para você.

Consulta Estado

O ng-model directiva pode fornecer status para os dados do aplicativo (inválidas, sujo, tocado, erro):

Exemplo

<form ng-app="" name="myForm" ng-init="myText = '[email protected]'">
    Email:
    <input type="email" name="myAddress" ng-model="myText" required>
    <h1>Status</h1>
    {{myForm.myAddress.$valid}}
    {{myForm.myAddress.$dirty}}
    {{myForm.myAddress.$touched}}
</form>
Tente você mesmo "

Classes CSS

O ng-model directiva prevê classes CSS para elementos HTML, dependendo do seu estado:

Exemplo

<style>
input.ng-invalid {
    background-color: lightblue;
}
</style>
<body>

<form ng-app="" name="myForm">
    Enter your name:
    <input name="myAddress" ng-model="text" required>
</form>
Tente você mesmo "

O ng-model directiva acrescenta / retira as seguintes classes, de acordo com o estado do campo de formulário:

  • NG-vazia
  • ng-não-vazia
  • ng-tocado
  • ng-intocado
  • ng-valid
  • ng-inválida
  • ng-suja
  • NG-pendente
  • ng-intocada