Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ExtJS 4.1树存储中的不同节点类型_Extjs_Extjs4.1 - Fatal编程技术网

ExtJS 4.1树存储中的不同节点类型

ExtJS 4.1树存储中的不同节点类型,extjs,extjs4.1,Extjs,Extjs4.1,我有一个带有嵌套数据的树数据结构 树节点和数据节点。与文件系统一样,树节点是文件夹,数据节点是文件 但是JSON结构是这样的: { name: 'root', data: [ [a, b, 100, 23], [a, b, 100, 23], [a, b, 100, 23] ... ] children: [ { name: 'child1', data: [...], children: [...]

我有一个带有嵌套数据的树数据结构

树节点和数据节点。与文件系统一样,树节点是文件夹,数据节点是文件

但是JSON结构是这样的:

{ name: 'root', data: [ [a, b, 100, 23], [a, b, 100, 23], [a, b, 100, 23] ... ] children: [ { name: 'child1', data: [...], children: [...] }, { name: 'child2', data: [...], children: [...] }, ... ] } { 名称:'根', 数据:[ [a,b,100,23],, [a,b,100,23],, [a,b,100,23] ... ] 儿童:[ { 姓名:'child1', 数据:[……], 儿童:[……] }, { 姓名:'child2', 数据:[……], 儿童:[……] }, ... ] } 我想将子节点解析为TreeNodes,将数据数组解析为DataNodes,并在一个TreeStore中使用它们

这可能吗


ATM我有树节点,每个树节点都有一个数据记录关联,这是一个次优的解决方案。

我也有类似的情况。您需要做的是创建一个包含这两种数据类型的模型类(提取重叠属性)。就树存储而言,它不会区分记录类型,但您可以通过图标自定义树的外观,使每个记录类型具有不同的外观。但数据必须相同,例如,两种记录类型的Name属性必须相同


由于来自服务器响应的JSON结构有些奇怪,您必须自己解析它,并形成treestore所期望的结构。或者,您需要控制服务器端实现并在那里进行调整。

正如我所期望的那样。。。无论如何,谢谢你。如何将TreeStore配置为将
数据
childrend
解析为子节点?您确实无法配置它。因为您必须指定数据根所在的位置。默认情况下应为子项。您可以通过迭代jSOn数组创建自己的结构,并创建从NodeInterface扩展的模型实例。