我已阅读所有文档(即:http ://docs.kendoui.com/howto/load-templates-external-files )并查看了所有演示,但没有看到任何示例显示如何异步加载外部模板使用 Kendo UI 的声明式绑定语法。
这种行为是开箱即用的,还是我需要为我的应用程序框架实施解决方法?我一直无法挖掘任何相关信息。
这是我正在渲染的布局块的示例:
{
tag: 'div',
id: 'summary-insured',
name: 'summary-insured',
class: 'summary-detail',
data: {
role: 'treeview',
bind: {
source: {
type: 'method',
hierarchical: true,
config: {
transport: {
read: {
url: 'Summary.aspx/GetInsureds'
}
}
}
},
events: {
pageLoaded: function (e) {
// Do something
},
change: function (e) {
// Do something
}
}
},
template: 'summary-item-template',
hasChildren: false
}
}...
...呈现为:
<div class="summary-detail k-widget k-treeview" data-animation="false"
data-bind="source: summaryInsuredSource, events: { pageLoaded: summaryInsuredOnPageLoaded, change: summaryInsuredOnChange }"
data-drag-and-drop="false" data-has-children="false" data-role="treeview"
data-template="summary-item-template" data-text-field="Value"
data-url-field="Key" id="summary-insured" tabindex="0">
<ul class="k-group k-treeview-lines">
<li class="k-item k-first k-last" data-uid=
"56e2308c-3c68-4784-aa3c-6f975645f92c" id=
"summary-insured_tv_active">
<div class="k-top k-bot">
<span class="k-in k-state-focused"></span>
<div class="name">
<span class="k-in k-state-focused"><button class=
"control delete sprite sprite-delete" data-id="2320"
data-message="Deleting insured..." data-url=
"Summary.aspx/DeleteInsured" title=
"Delete"><span class="k-in k-state-focused"></span>
<a class="link" href="Insured.aspx?id=2320">BOB
JOHNSON</a></button></span>
</div>
</div>
</li>
</ul>
</div>
我听过各种关于为什么我的 UI 框架很疯狂的胡说八道——相信,我有这样做的理由,而且考虑到我想要完成的工作,没有很多替代方案。此外,Magento 的人员从 XML 配置文件构建应用程序的前端和管理界面做得很好。Wix 的人们已经从本质上是用户定义的配置中生成了数百万个站点。除了使用 Javascript 对象文字、JSON 和 Kendo UI 之外,我没有做任何不同的事情。
我的数据绑定(事件、值、文本、html 等)都工作得很好,并且框架已经部署——我正在专门寻找一个模板解决方案。
非常感谢任何帮助!
干杯!
卢卡斯