【发布时间】:2017-09-12 12:31:00
【问题描述】:
我想构建一个混合树,以显示整个系统的全局视图。 该系统是一个内容管理系统,但它还具有其他功能,可以从构成我的全局 API 的“OData 上下文集合”中进行管理。
所以我试图弄清楚如何创建一个分层数据源,它可以根据节点类型和少量动态模型元数据处理不同的 URL。
例如...
我的框架中有 API 函数允许我做...
my.api.get("Context/Type", function(odataCollectionResult) {
...
});
我也知道 Kendo UI 支持执行类似...
var viewModel = new kendo.data.HierarchicalDataSource({
type:'odata-v4',
...
});
$("#tree").kendoTreeview({ dataSource: viewModel ... });
...但我的问题是...
如何设置剑道树状视图,以便绑定到调用自定义展开和折叠函数的自定义数据源,以便我可以根据我知道的关于节点代表的更复杂的事情做出决策?
我需要这样做,因为根据节点类型,它的子节点将来自不同的端点,所以我不能只使用 OData 数据源。
我正在尝试做这样的事情,但我似乎无法让它工作......
var viewModel = {
data: [],
expand: function(node) {
var myParams = { endpoint: "Context/Type", childNodeType: "Foo/Bar" };
my.api.get(myParams.endpoint, function(data) {
node.data.children = buildNodes(myParams.childNodetype, data);
});
},
collapse: function(node) {
...
}
}
}
$("#myTree").kendoTreeview({
dataSource: viewModel,
events: { onExpand: viewModel.expand, onCollapse: viewModel.collapse }
});
有没有人这样做或对我如何使它工作有一些建议?
【问题讨论】:
标签: c# kendo-ui treeview kendo-treeview