我有以下代码...

<div class="row">
    <div class="col-md-5">
        <span>
            Comments
        </span>
    </div>

    @*<div class="col-md-7">*@
    <div class="col-md-7" ng-class="{'has-error': TaskObject.Comments.length > 500}">
        <textarea class="form-control" ng-model="TaskObject.Comments" maxlength="500"></textarea>
    </div>
</div>


在其他地方我使用相同的元素

<div class="row">
    <div class="col-md-5">
        <span>
            Comments
        </span>
    </div>

    @*<div class="col-md-7">*@
    <div class="col-md-7" ng-class="{'has-error': TaskObject.Comments.length > 500}">
        <textarea class="form-control" ng-model="TaskObject.Comments" maxlength="500"></textarea>
    </div>
</div>


问题是,当我运行该网站时,它引发以下异常:

Uncaught Error: Syntax error, unrecognized expression: div[ng-class='{'has-error': TaskObject.Comments.length


但是,我注意到,如果删除任何我喜欢的内容,或者添加一个;在其中一种情况结束时,错误消失。

关于发生这种情况的任何想法?

最佳答案

最初,TaskObject.Commentsnull,而null没有length属性。

ng-class内添加额外的支票

像这样

 ng-class="{'has-error': TaskObject.Comments && TaskObject.Comments.length > 500}"

10-06 15:42