【问题标题】:How to update data with TreeStore or TreeEditor component?如何使用 TreeStore 或 TreeEditor 组件更新数据?
【发布时间】:2011-05-22 01:08:18
【问题描述】:

我使用 tree.Panel 和 TreeStore 组件。我使用 JSON 文件来存储我的数据,但我想知道如何使用 TreeStore 升级我的数据?!

我解释了我的问题:我的页面上有 2 个组件:

Tree.Panel 用 TreeStore 和 Panel 显示数据来编辑数据,因为我不知道如何直接编辑树?!

我想使用提交按钮来更新树上的数据,但我不明白该怎么做?!

如果可能的话?!

我不明白如何添加新节点、升级节点和删除节点?!

或者可能存在 TreeEditor 组件?!

非常感谢帮助:)

【问题讨论】:

  • 我遇到了完全相同的问题。 TreeStore 似乎没有“添加”方法。
  • 您能否发布一些代码,以便我们更好地了解您正在使用的内容...

标签: extjs extjs4


【解决方案1】:

我认为我们还没有看到 TreeEditor 组件。但是有一些方法可以操纵您现有的树。您应该能够使用NodeInterface 的方法添加、更新、删除树节点。

你有这样的方法:

  • 追加子项
  • 插入孩子
  • 插入之前
  • 删除孩子
  • 替换子项

等等……

以下是如何将新节点附加到树的示例代码:

var node = myTreeStore.getRootNode();

node.appendChild({
    text: 'A New node'
});

同样,您可以使用其他方法来操作树。要将节点插入特定位置,您必须使用insertChild。对于此方法,您还必须指定位置。

简而言之,编辑树的访问点是 TreeStore 的 getRootNode() 方法。

【讨论】:

  • 另外,如果了解更多信息有帮助的话:我写了一个简短的教程,展示了如何构建一个使用多个 TreeStore 的 TreePanel,其中两个节点都是静态节点和模型节点,从服务器:bit.ly/oTePLA
  • 通过追加/插入节点更新TreeStore后,是否会更新树形面板的视觉效果?即,如果我有两个带有两个树存储的树面板,并且如果我在 tree1 中添加一个节点并更新 tree2 存储,那么我会在不加载 tree2 存储的情况下看到 tree2 面板中的更改吗?
猜你喜欢
  • 2014-06-08
  • 2020-01-12
  • 2023-03-08
  • 1970-01-01
  • 2022-07-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-17
相关资源
最近更新 更多