Javascript 如何在使用cycle for时正确使用ngRepeat
我正在尝试使用以下方法为列表中的日期着色: HTML javascriptJavascript 如何在使用cycle for时正确使用ngRepeat,javascript,angularjs,Javascript,Angularjs,我正在尝试使用以下方法为列表中的日期着色: HTML javascript app.controller ('listContr', function () { this.items = tasks; this.dateColor = function () { for (var i = 0; i <= tasks[i].length; i++) { if (currDate > tasks.dueDate) {return 1} esle {
app.controller ('listContr', function () {
this.items = tasks;
this.dateColor = function () {
for (var i = 0; i <= tasks[i].length; i++) {
if (currDate > tasks.dueDate) {return 1} esle {return 2};
}
};)};
但它永远不会返回2个或只在1中着色的日期。我猜ngRepeat会使项目继承以前的属性。因此,我不知道如何修复它。更改函数的签名以从ngRepeat获取项目,这样函数就知道要为哪个项目着色
<div id="list" ng-controller = "listContr as ilist">
<ul>
<li ng-repeat = "item in ilist.items">
<p class="date-{{ilist.dateColor(item)}}">{{item.dueDate| date: 'dd.MM.yyyy HH:mm'}}</p>
</li>
</ul>
</div>
注意:我没有在浏览器中检查这一点,只是调整了代码以显示概念您有输入错误。您使用的是esle而不是Elsey您还有一个输入错误。您使用的是esle而不是Elsey您是对的,但这是原始问题代码的复制粘贴。正如我在笔记中所写的,代码没有经过测试,只是经过修改以显示概念。
<div id="list" ng-controller = "listContr as ilist">
<ul>
<li ng-repeat = "item in ilist.items">
<p class="date-{{ilist.dateColor(item)}}">{{item.dueDate| date: 'dd.MM.yyyy HH:mm'}}</p>
</li>
</ul>
</div>
app.controller ('listContr', function () {
this.items = tasks;
this.dateColor = function (item) {
if (currDate > item.dueDate) {return 1} esle {return 2};
};)};