如果我有一个可观察的数组
foos = [{ name: "a" },{ name: "b" },{ name: "c" }]
<ul> <li class="add-new-foo">Special stuff here</li> <li>a</li> <li>b</li> <li>c</li> </ul>
我很亲近
<ul data-bind="template: { name: 'foo-template',foreach: foos }"> <li class="add-new-foo">Special stuff here</li> </ul> <script id="foo-template" type="text/html"> <li data-bind="text: name"></li> </script>
但是最后把.add-new-foo放在a,b,c之后。
有任何想法吗?在我的情况下,使用Knockout foreach而不是jQuery模板的{{each}}至关重要,因为the benefits mentioned in the Knockout docs。
解决方法
看起来可以通过KO 1.3 2.0中的新的无容器控制流程和foreach绑定:
<ul> <li>Static item</li> <!-- ko foreach: products --> <li data-bind="text: name"></li> <!-- /ko --> </ul>
详情请见这篇文章:http://blog.stevensanderson.com/2011/08/31/knockout-1-3-0-beta-available/