Angular-Material ngMessage 在将 ng-repeat 与 ng-message-exp 指令一

Angular-Material ngMessage not working when using ng-repeat with ng-message-exp directive

本文关键字:ng-message-exp 指令 ng-repeat ngMessage 在将 Angular-Material      更新时间:2023-09-26

我正在尝试使用角度材料进行工作表单验证。此表单使用 ng-messages 从控制器中的 json 发送错误消息。我的观点是这样的:

    <md-input-container flex>
      <label>email2</label>
      <input name="email2" ng-model="email2" required ng-minlength="5" type="text" value="{{ email2 }}" />
      <ng-messages for="form3.email2.$error">
        <div ng-repeat="m in errors">
          <div ng-message-exp="m.expression">{{m.description}}</div>
        </div>
      </ng-messages>
    </md-input-container>

该代码在没有 ng-repeat 指令的情况下工作,但无法理解为什么使用 ng-repeat 中断。

一个代码笔示例:http://codepen.io/anon/pen/VeGBRm

一旦您在 ngMessages 模块上添加所需的依赖项,它就会起作用:

var app = angular.module('MyApp', ['ngMaterial', 'ngMessages']);

此外,ng-messages元素不能很好地作为md-input-container的子元素(覆盖输入),因此您可能需要ng-messages {display: block;}

演示:http://codepen.io/anon/pen/QyVVPW