ng class-错误:令牌'-'位于第{2}列

ng-class - Error: Token '-' is at column {2}

本文关键字:于第 错误 class- 令牌 #39- ng      更新时间:2023-09-26

我对ng类有问题。如果角色具有管理员权限,则添加类禁用状态。现在发生错误

html:

<label class="toggle modal-label-box" ng-class="{state-disabled: checkCanModify()}">
   <input type="radio" name="radio-toggle" ng-model="role" value="guest">
   <i data-swchon-text="ON" data-swchoff-text="OFF"></i>No role
</label>

js:

$scope.checkCanModify = function() {
    return ($scope.role == "admin" ? true : false);
};

错误:

Syntax Error: Token '-' is at column {2} of the expression [{3}] starting at [{4}].

我该怎么解决?问候

在类周围加引号:

"{'state-disabled': checkCanModify()}"

使用ngClass指令时,与使用任何普通javascript对象一样,属性名称必须是有效的标识符。如果不是,你必须用引号括起来:

ng-class="{'state-disabled': checkCanModify()}"