淘汰数据绑定模板

时间:2012-06-19 08:35:03

标签: knockout.js jquery-templates

出于某种原因,当您使用数据绑定模板时,knockout需要jquery tmpl,否则会抱怨它找不到成员(模板的数据绑定数据尚未设置)。

tmpl引擎不支持模板中的foreach绑定

1)是不是需要外部引擎?

2)在模板中是否有使用tmpl和foreach bindnigs的解决方法?

小提琴(参见错误日志)http://jsfiddle.net/C9kDL/

由于

edti:没有foreach的示例可以说明数据绑定模板的工作原理http://jsfiddle.net/jvLyf/

1 个答案:

答案 0 :(得分:2)

假设你没有与tmpl库结合,你可以在没有tmpl库的情况下使用它(我确信你已经知道它不再被开发了)。如果您只使用本机淘汰模板,则会收到错误:

  

未捕获错误:无法解析绑定。消息:TypeError:不能   读取未定义的属性'children';绑定价值:foreach:   儿童

原因是selected以null开头。因此,如果我们向模板调用添加条件:

<div data-bind="template: { name: 'test', data: selected, if: selected }"></div>

..然后事情就好了。

有关示例,请参阅http://jsfiddle.net/unklefolk/Nrrv5/1/

希望这就是你要找的东西。