我已经为 treeList 编写了一个指令,并从远程服务调用将数据绑定(bind)到它。以下是指令链接方法中 TreeListDataSource 的代码:
scope.treeListOptions.dataSource = new kendo.data.TreeListDataSource({
transport: {
read: function(options) {
scope.getData().then(function(dataToBeDisplayed) {
options.success(dataToBeDisplayed);
}, function(error) {
$log.error(error);
});
},
error: function(e) {
alert(e.status + e.errorThrown);
},
},
});
scope.treeListOptions.dataSource.read();
以下是 TreeList 指令定义:
var TreeListDirectiveDefinition = {
restrict: 'E',
replace: true,
template: '<div><kendo-treelist k-options="treeListOptions"></kendo-treelist></div>',
scope: {
columns: '=',
getMethod: '&'
},
link: linkTreeList
};
当我看到绑定(bind)到scope.treeListOptions.dataSource.data()的数据时,添加了许多新属性,如下所示:
// parent element
C.define.init
PartExamined: "test"
StudyUid: "1.3.6.1.4.1.30071.8.56809868014.4964677242993979.234.56616"
_events: Object
_loaded: true
dirty: false
hasChildren: true
id: 1
parent: ()
parentId: null
parentIdField: "parentId"
uid: "1ca6302c-b1ad-493f-b002-d2032a548a80"
__proto__: i.extend.i
//child element
C.define.init
PartExamined: "test2"
SeriesInstanceUid: "1.3.6.1.4.1.30071.8.56809868014.4964677242993979.234.56617"
_events: Object
_loaded: true
dirty: false
hasChildren: false
id: 2
parent: ()
parentId: 1
parentIdField: "parentId"
uid: "953bc7a7-e5e8-4f26-a120-b13402c6cce4"
__proto__: i.extend.i
诸如 parent: ()、parentIdField: "parentId"、_loaded: true、dirty: false、hasChildren: true 等属性由 TreeListDataSource 添加。
这是正确的数据格式吗?因为 TreeList 显示“没有可显示的记录”。
谁能帮我解决这个问题吗?
已更新 以下是为 treeList 创建的 Angular 指令的链接:http://jsfiddle.net/yuqorcvL/15/
该指令仍然不起作用。任何帮助将不胜感激。
谢谢。
最佳答案
您应该在 scope.treeListOptions.dataSource
中添加一个架构
schema: {
model: {
id: "EmployeeID",
parentId: "ReportsTo",
fields: {
ReportsTo: { field: "ReportsTo", nullable: true },
EmployeeID: { field: "EmployeeId", type: "number" },
Extension: { field: "Extension", type: "number" }
},
expanded: true
}
}
看that example在 Kendo 文档
关于angularjs - Kendo treeList 数据源 - 不与远程数据绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32777830/