4

我有一个搜索结果屏幕,在提供的结果有效负载中,我得到了一个 pageCount 号码。有了这个,我打算创建一个简单的寻呼机。

所以我真的需要这样做:

    <!-- ko for(var i = 0; i < pageCount(); i++) -->
        <div data-bind="html: 'Page '+$index()"></div>
    <!-- /ko -->

显然这不起作用,但你明白我的意思。我想我可以在视图模型上创建另一个 observableArray 整数,每个项目代表一个页面,但这似乎有点过头了。但是,这可能是我唯一的选择?!

哦,好吧,我想我最好问一下,因为有时有一些杀手功能可以在飞行中创建一个范围,然后我可以超越那个坏男孩。

Anyhooo,我想你明白我的意思。谢谢

4

2 回答 2

13

我会使用foreach: new Array(pageCount())

<!-- ko foreach: new Array(pageCount())  -->
        <div data-bind="html: 'Page '+$index()"></div>
<!-- /ko -->​
于 2012-06-28T11:33:44.143 回答
2

如果我正确理解您的要求,请查看 Michael Best 的“重复”插件:

https://github.com/mbest/knockout-repeat

例子:

<div data-bind="repeat: pageCount" data-repeat-bind="html: 'Page '+$index"></div>
于 2012-06-28T11:24:59.847 回答