2015-11-05 101 views
8

我正在开发与Aurelia路上的应用程序,让我们说我有一个循环有:奥里利亚repeat.for限制

<div repeat.for="t of allTags">${t.name}</div> 

有很多条目,自然我想限制他们展示的数量。所以基本上我想有像角的重复限制:

<div ng-repeat="t in allTags | limitTo:5 ">{{t.name}}</div> 

我已经在这里检查了文档http://aurelia.io/docs.html但还没有找到的话题什么。

在Aurelia中有这样的功能吗?如果不是,我宁愿在这个视图中删除控制器中的列表?

谢谢!

回答

17

选项1:使用值转换器。

取价值converter.js

export class TakeValueConverter { 
    toView(array, count) { 
    return array.slice(0, count); 
    } 
} 

app.html许多其他here这种情况下的

<require from="./take-value-converter"></require> 

<div repeat.for="t of allTags | take:5">${t.name}</div> 

活生生的例子和。在aurelia.io

价值转换器

其他文档

选项2:重复在若干

<div repeat.for="i of 5">${allTags[i].name}</div> 
+0

是否有可能不是0的指数开始? – Axel

1

如果你想开始在不同的价值,你可以在toView方法编辑TakeValueConverter 添加第三个参数。

toView(array,start,count){ 
    return array.slice(start,count); 
} 

但你必须跟踪的最后一个位置不知何故自己