В моем проекте у меня есть angularjs 1.5.10 и ng-messages 1.5.10.Я использую это в простой форме:
<form class="form-horizontal" ng-submit="createBooking()" role="form" name="createBookingForm" novalidate>
<div class="form-group">
<label for="payment_details_last_name" class="col-sm-3 control-label">Last name</label>
<div class="col-sm-6">
<input type="text"
id="payment_details_last_name"
name="payment_details_last_name"
class="form-control"
ng-model="payment_details.last_name"
ng-required="true"
ng-maxlength="30" />
<div ng-messages="createBookingForm.payment_details_last_name.$error" role="alert">
<div ng-message="required">This field is required</div>
<div ng-message="maxlength">Your field is too long</div>
</div>
</div>
<div class="col-sm-3"></div>
</div>
</form>
В контроллере:
$scope.members = [{
'first_name': '',
'last_name': '',
'email': '',
'phone_number': '',
'date_of_birth': '',
}];
И на начальном этапе я всегда вижу ошибку This field is required
.Я попытался создать пустой объект в контроллере:
$scope.createBookingForm = {};
Я также показываю форму после инициализации <div ng-if="initialized">
Ничего не работает.Проект с использованием angular-seed skeleton
Я видел грязные хаки, как если бы $ коснулся другого, но я хочу понять, что не так ...