У меня есть плункер.
Когда я вводим ввод в поле ввода и щелкаю в другом месте страницы, появляется сообщение "Это поле обязательно". отображается. Почему отображается сообщение, несмотря на то, что поле ввода имеет значение?
Вот код:
<form name="reportform" novalidate >
<input name="startdate" placeholder="Enter a start date" ng-model="startdatevalue" required>
<ng-messages ng-if='reportform.startdate.$touched' for="reportform.startdate.$error">
<ng-message when="required">
This field is required.
</ng-message>
</ng-messages>
<button ng-disabled="reportform.$invalid" type="submit">
Submit Query
</button>
</form>
Вам не нужно импортировать модуль ngMessages:
Пример: https://plnkr.co/edit/VWhrTIzRjkQBGfjaj5Zb?p=preview
var app = angular.module('plunker', ['ngMessages']);
app.controller('MainCtrl', function($scope) {
$scope.name = 'World';
});
Только изменение - вам нужно добавить зависимости ngMessages
в вашем угловом модуле, как
var app = angular.module('plunker', ['ngMessages']);
app.controller('MainCtrl', function($scope) {
$scope.name = 'World';
});