2016-11-16 2 views
0

У меня есть этот HTMLКак правильно добавить "след" в ngRepeat

<ion-item ng-repeat="item in ::itemsToShow = extensionItems | orderBy:'distance' " class="entry" ng-class="{'alt-background': $index % 2 == 1}" ng-click="itemDetail(item)"> 
    ...details... 
</ion-item> 

Я не могу понять, как правильно добавить track by:item._id я всегда получаю эту ошибку:

Syntax Error: Token 'track' is an unexpected token at column 30 of the expression [itemsToShow = extensionItems track by:_id |...

I пробовал:

<ion-item ng-repeat="item in ::itemsToShow = extensionItems track by:item._id | orderBy:'distance' " class="entry" ng-class="{'alt-background': $index % 2 == 1}" ng-click="itemDetail(item)"> 

<ion-item ng-repeat="item in ::itemsToShow = extensionItems track by:_id | orderBy:'distance' " class="entry" ng-class="{'alt-background': $index % 2 == 1}" ng-click="itemDetail(item)"> 

<ion-item ng-repeat="item in ::itemsToShow = extensionItems | orderBy:'distance' track by:_id" class="entry" ng-class="{'alt-background': $index % 2 == 1}" ng-click="itemDetail(item)"> 

<ion-item ng-repeat="item in ::itemsToShow track by:_id = extensionItems | orderBy:'distance' " class="entry" ng-class="{'alt-background': $index % 2 == 1}" ng-click="itemDetail(item)"> 

пытался также с помощью _id и item._id, и я всегда получаю ту же ошибку (разный столбец, конечно). Как и где следует писать track by?

Edit: Угловая версия 1.4.3

Edit 2: Данные JSon имеют эту структуру

_id: "000000426" 
_rev: "1-5003008fcf25b8f130233b944bb761c9" 
someText: "<p class="bodytext ">Something for you.</p>" 
name : "You-Shop" 
homepage : "http://www.youshop.com" 
id: 426 
+0

Что такое угловая версия? – Sajeetharan

+0

@Sajeetharan Я добавил версию на свой пост, это 1.4.3 – distante

ответ

0

Вы просто пропустить тот факт track by должен не следовать двоеточие (:) ...

+0

Auch! так просто... – distante

0
`track by` MUST be the final statement in a ng-repeat.