2015-08-24 33 views
0

我已经写了NG-重复类似下面NG-复读功能调用多次

<div class="anchor" ng-repeat="race in races" ng-class="showdata (race)"></div> 


    $scope.showdata = function(data) 
    { 
    var raceId = data.raceId; 
    if(raceId == 66666666) 
    { 
    console.log(data); 
    console.log('----- next ---') 
    } 

和数据是这样的

[ { “raceId”: “434346” }, { “raceId”: “123456” },{ “raceId”: “222222” },{ “raceId”: “5555555” }
, { “raceId”: “32423443” }
, { “raceId”: “66666666” }
]

理想数据应该得到仅输出一次作为raceId 66666666是只有一次。但我看到物体印三次。它有什么问题吗?理想情况下,它意味着它被称为三次相同的数据?

+4

这只是运行3次的摘要循环。因此3个日志。 – tymeJV

+0

@tymeJV _这是正常的还是代码的问题。我担心bcos,我的代码存在任何问题! – Hacker

+0

这很正常 - 只是Angular的内部工作。 – tymeJV

回答

2

在@tymeJV评论的旁注中,显然是正确的。

如果您想根据其中一个ng-repeat项目设置特定的课程,您还可以使用ng-class本身内部的基本逻辑。

例如:

<div class="anchor" ng-repeat="race in races" ng-class="{'some-class': race.raceId === '66666666'"></div> 

这将仅适用于some-class你已经在你的代码中列出的比赛项目。

+0

不要处理大量的工作。所以我担心我的代码的性能,如果我做错了什么。这是正常的吗? – Hacker

+0

我倾向于避免在html中使用函数调用来获取角度。即使你有更大的处理能力,你仍然应该能够以一种不需要使用'ng-class'函数调用的方式来抽象它。我怀疑你是在错误地思考你的问题。 –