У меня странная проблема.Все наши md-input-контейнеры с ng-сообщениями в них застряли после того, как были минимизированы / упакованы и опубликованы.
Теперь это работает первые несколько раз, но если вы укажете на ошибку, вернитесь и введитеправильные данные застряли.
Мы используем этот пакет / минификатор.https://github.com/madskristensen/BundlerMinifier
Мы пробовали AngularJS 1.6.3 и 1.7.7, но получили тот же результат.
Я читал этот пост.https://github.com/angular/material/issues/2781 И мы можем убедиться, что в наше приложение ngMessages
внедрено и angular-messages.js
загружено на страницу index.html.
В ходе некоторого тестирования я вижу, что объект signInForm.accessKey.$error
изменение (требуется = правда добавлено и удалено).Но элемент ng-message
не обновляется с этими изменениями.Это как наблюдатель остановился.Я могу добавить ng-hide="signInForm.accessSecret.$error.required === undefined"
, чтобы скрыть сообщение, но в этом нет необходимости.
Я также упомяну, что это прекрасно работает, когда выполняется без объединения и без разделения.У меня также есть проблема в github для bundlerMinifer.
Есть мысли?
<form name="signInForm" ng-submit="vm.signIn()" style="width: 100%;">
<md-input-container class="md-block">
<label>Email address</label>
<input name="accessKey" ng-model="vm.accessKey" type="email" required>
<ng-messages for="signInForm.accessKey.$error" role="alert">
<ng-message when="required">Email address is required.</ng-message>
</ng-messages>
</md-input-container>
<md-input-container class="md-block">
<label>Password</label>
<input name="accessSecret" ng-model="vm.accessSecret" type="password" required>
<ng-messages for="signInForm.accessSecret.$error" role="alert">
<ng-message when="required">Password is required.</ng-message>
</ng-messages>
</md-input-container>
<div layout="column" layout-align="start end">
<md-button class="md-button ws-margin-0" ng-disabled="vm.$ws.isInCallback()" aria-label="Forgot password" ng-click="vm.forgotPassword()" style="text-transform: none !important; position: relative; top: -40px;">Forgot password?</md-button>
</div>
<div layout="column" layout-align="center center">
<md-button type="submit" id="signInButton" class="md-button md-raised" ng-disabled="vm.signInForm.$invalid || vm.$ws.isInCallback()" aria-label="sign in" style="width: 100%; text-transform: none !important;">Sign in</md-button>
</div>
</form>