首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将远程JSON数据绑定到Kendo TreeView - only getting第一层

将远程JSON数据绑定到Kendo TreeView - only getting第一层
EN

Stack Overflow用户
提问于 2017-07-28 07:12:52
回答 1查看 958关注 0票数 0

我目前正在尝试让一个Kendo TreeView来显示一些JSON数据。

代码语言:javascript
复制
var treeViewDataSource = new kendo.data.HierarchicalDataSource({
        transport: {
            read: {
                url: "/Utilities/Tool/Get/TreeView",
                type: "get",
                dataType: "json"
            }
        }
    });

    $("#tree-view").kendoTreeView({
        loadOnDemand: false,
        dataSource: treeViewDataSource,
        select: onSelect
    });

我的JSON数据如下所示:

代码语言:javascript
复制
[{
    "text": "CREATE",
    "description": "Create Transaction",
    "items": [
        {
            "text": "PSEUDO",
            "feature": "CREATE",
            "items": [
                {
                    "text": "FIX",
                }
            ],
            "nodeChildren": 1
        }
    ],
    "nodeChildren": 1
},
{
    "text": "DATA",
    "description": "Data Report",
    "items": [],
    "nodeChildren": 0
}]

现在,奇怪的是,如果我将上面的JSON数据复制并粘贴到kendo DataSource中,而不是远程调用它,TreeView会很好地显示数据。当我远程调用数据时,TreeView只显示第一层节点,如下所示:

创建

数据

在加载表的短暂时间内,表示节点是否有子节点的小箭头是可见的,但很快就会消失。我不确定发生了什么,Kendo文档也没有太大帮助。为什么Kendo不能正确读取此数据?我正在使用Postman测试API,JSON对我来说看起来非常好,如果复制到本地就可以工作。怎么回事?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2017-07-28 23:40:42

我已经找到了我的问题的解决方案,我所要做的就是弄乱模式,尽管我仍然不完全理解模式是如何工作的。

代码语言:javascript
复制
var treeViewDataSource = new kendo.data.HierarchicalDataSource({
        transport: {
            read: {
                url: "/Utilities/Tool/Get/TreeView",
                type: "get",
                dataType: "json"
            }
        },
        schema: {
            model: {
                children: "items"  
            }
        }
    });

我所要做的就是定义孩子字段。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45362447

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档