Javascript 角度:无法读取属性';长度';使用Minng Length时的未定义值

Javascript 角度:无法读取属性';长度';使用Minng Length时的未定义值,javascript,angularjs,Javascript,Angularjs,当我开始输入时,我遇到了这个问题,在检查验证之前,ng minlength和ng maxlength都是ok,我没有得到length属性,在返回中,该属性不允许我向用户显示他剩下的字符数: <label>Subject</label> <input type="text" name="subject" required ng-minlength="15" ng-maxlength="120" ng-model="subject"/> <di

当我开始输入时,我遇到了这个问题,在检查验证之前,ng minlength和ng maxlength都是ok,我没有得到length属性,在返回中,该属性不允许我向用户显示他剩下的字符数:

<label>Subject</label>
<input type="text" name="subject" required
       ng-minlength="15" ng-maxlength="120" ng-model="subject"/>
<div ng-messages="form.subject.$error" ng-if="form.subject.$touched" class="ng-cloak">
<div ng-message="required" class="angular-error">Subjectis required.</div>
<div ng-message="minlength" class="angular-error">Minimum Length of 15 Characters</div>
</div>

<div class="ng-cloak">{{subjectMaxLength - subjectLength}} </div>
有效且超过15个字符后,计数正确,但在此之前为冻结


有什么建议吗?

模型值仅在满足ng minlength/ng maxlength要求后分配。在此之前,该值始终是未定义的

参见文档示例(您可以在示例表单上对其进行实时测试):


如果您想知道为什么会出现这种情况,我建议您阅读以下页面,尤其是
$validate()部分。

是否有方法使用ng minlength集合获取长度?我将ng minlength设置为4,但我想在至少输入一个字符时显示“清除”按钮。我花了一整天的时间在这个bs上。只为我自己发现这一点,并想看看是否有其他人遇到了这一点。。。
$scope.subjectMaxLength = 90;
$scope.$watch('subject', function() {
   $scope.subjectLength = $scope.subject.length;
 });