Ну, им совсем новичок в AngularJS. Я пытаюсь выяснить, как работает ng-модель. То, что я пытаюсь сделать, это получить строку поля ввода и посмотреть, совпадает ли она с другой строкой. Я проверил документ, но не мог понять. Любые советы новичку будут оценены!
var app = angular.module("app",[]);
app.controller('MainController',function($scope){
if($scope.name === "Lisa"){
alert("my name is lisa !");
}
})
Если вы хотите сделать валидацию в контроллере, как в примере, вам нужно настроить наблюдателя на модели следующим образом.
var app = angular.module("app",[]);
app.controller('MainController',function($scope){
$scope.$watch('name', function (newValue, oldValue) {
// NOTE: triggered on every change in $scope.name model
if(newValue === "Lisa"){
alert("my name is lisa !");
}
});
});
Для более сложных проверок вам нужно будет создать директиву, которая потребует директивы ng-model и использовать контроллер NgModelController для добавления пользовательских валидаторов.
Скопируйте с помощью угловых документов:
ngModel - директива в модуле ng Директива ngModel связывает вход, select, textarea (или пользовательский контроль формы) с свойством в области видимости с помощью NgModelController, который создается и отображается этой директивой.
ngModel отвечает за:
Связывание представления с моделью, которую требуют другие директивы, такие как input, textarea или select.
Предоставление поведения проверки (т.е. Требуемого, числа, электронной почты, URL-адреса). Сохранение состояния управления (действительный/недействительный, грязный/нетронутый, коснувшийся/нетронутый, ошибки проверки).
Установка связанных классов css для элемента (ng-valid, ng-invalid, ng-dirty, ng-pristine, ng-touched, ng-untouched, ng-empty, ng-not-empty), включая анимацию.
Регистрация элемента управления с его родительской формой.
Примечание. NgModel попытается привязать свойство, заданное путем вычисления выражения в текущей области. Если свойство еще не существует в этой области, оно будет создано неявно и добавлено в область.