从可观察数组中获取第n个项目

时间:2013-08-22 05:09:49

标签: arrays knockout.js knockout-2.0 ko.observablearray

我正在学习Knockout,并且有一个pdfs可观察数组,其中包含4个项目。我需要项目的HTML输出如下所示:

Intro Text
[Item 1].name is located in [Item 1].location

Some links, other body text
[Item 2].name is located in [Item 2].location
[Item 3].name is located in [Item 3].location
[Item 4].name is located in [Item 4].location

我找到了一些引用data-bind="text: pdfs[nth].name"的地方,但如果我这样做,我会得到'pdf未定义'或类似内容。我意识到我可以使用两个foreach循环和<!-- ko if: $index() == nth -->,但肯定有更好的方法吗?

这似乎是一些人想做的事情,所以我希望这是一个强有力的解决方案。我意识到我在谈论这里的第一项(其他一切都可以在foreach中完成),但我对nth整体感兴趣(如果我想说,项目3某处特别)。

*我真的不想创建自定义绑定,如果可能的话

1 个答案:

答案 0 :(得分:6)

你试过data-bind="text: pdfs()[nth].name"吗?

看看&#34;从observableArray中读取信息&#34;在此页面上:http://knockoutjs.com/documentation/observableArrays.html。如果pdfs是一个可观察的数组,那么要获取底层数组(以便您可以使用[])将其编入索引,则需要调用该函数。因此,()。