我正在尝试使用ng-class在ng-repeat中应用条件格式。条件应基于对象数据字符串的评估。
我正在尝试将他的代码应用于第3项的粗体。我尽力尝试$eval
或$parse
无济于事。
<body ng-app="examsApp">
<div ng-controller="ExamsController as examsList">
<div ng-repeat="exam in examsList.exams">
<span ng-repeat="levelnum in exam.levels.levelnums" ng-class="{ 'bold': $eval(exam.levels.evalby[$index]) }">
{{levelnum}}
</span>
</div>
</div>
</body>
var data = [
{
"id": "exam1",
"text": "Exam 1",
"levels":
{
"levelnums": ['2', '3', '4', '5'],
"evalby": ['$scope.bold === 0', '$scope.bold ==== 1', '$scope.bold === 2', '$scope.bold === 3']
}
}
]
angular.module('examsApp', [])
.controller('ExamsController', ['$scope', function ($scope) {
var examsList = this;
examsList.exams = data;
$scope.bold = 2;
}])
答案 0 :(得分:1)
你的插件有一些小问题,其中两个可以通过打开开发者控制台找到:
angularJS
。ng-repeat
examsList.exams
以外的div
点击examList
controller
。eval
数组中的最后一个值的末尾。eval
数组中的所有规则目前都已解析为false
。css
课程没有bold
规则。