我有一个搜索结果屏幕,在提供的结果有效负载中,我得到一个pageCount号码。有了这个,我打算创建一个简单的寻呼机。
所以我真的需要这样做:
<!-- ko for(var i = 0; i < pageCount(); i++) -->
<div data-bind="html: 'Page '+$index()"></div>
<!-- /ko -->
显然这不起作用,但你理解我的意思。我想我可以在View Model上创建另一个observableArray整数,每个项目代表一个页面,但这看起来有点过分。但是,这可能是我唯一的选择?!
哦,好吧,我觉得我最好问一下,因为有时会有一些杀手功能可以在飞行中创造一个范围,然后我可以预告那个坏男孩。
Anyhooo,我想你明白我的意思了。 感谢
答案 0 :(得分:12)
我会使用foreach: new Array(pageCount())
:
<!-- ko foreach: new Array(pageCount()) -->
<div data-bind="html: 'Page '+$index()"></div>
<!-- /ko -->
答案 1 :(得分:2)
如果我理解您的要求,请查看Michael Best的'Repeat'插件:
https://github.com/mbest/knockout-repeat
示例:
<div data-bind="repeat: pageCount" data-repeat-bind="html: 'Page '+$index"></div>