我可以在例如 kockoutjs 库中使用多个层次结构进行嵌套模板化吗?http://knockoutjs.com/或任何其他 Javascript 框架?
我有这个观点:
DataGrid:
Cell1, Cell2, Cell3, Within Cell4 is a ListBox.
无论它在 html 中看起来如何。是否可以使用 knockoutjs 或任何其他 javascript 框架来创建具有多个层次结构的嵌套模板?
我可以在例如 kockoutjs 库中使用多个层次结构进行嵌套模板化吗?http://knockoutjs.com/或任何其他 Javascript 框架?
我有这个观点:
DataGrid:
Cell1, Cell2, Cell3, Within Cell4 is a ListBox.
无论它在 html 中看起来如何。是否可以使用 knockoutjs 或任何其他 javascript 框架来创建具有多个层次结构的嵌套模板?
是的,在淘汰赛中是可能的。
您可以在根元素内指定模板名称:
<ul data-bind="template: {name: listItemTmpl, foreach: items()}"></ul>
然后在该模板中,您还可以通过data-bind
属性引用其他模板:
<script id="listItemTmpl" type="text/x-jquery-tmpl">
<li>
<h3 data-bind="text: name"></h3>
<div data-bind="template: itemDetailsTmpl"></div>
</li>
</script>
Knockout 将应用根模板绑定,并且当它遇到data-bind
该模板内的属性时,它会递归地应用这些属性。
我的示例将适用listItemTmpl
于每一个items()
,然后适用于将用于itemDetailsTmpl
显示详细信息的每一个。
就性能而言,它非常快速且对用户来说并不明显。
我在当前项目中以这种方式使用剔除模板,递归模板让我可以将部分标记保持在小部分中。
这是你要找的东西吗?