【问题标题】:dojo tree maintenance problem道场树维护问题
【发布时间】:2010-09-24 13:11:50
【问题描述】:

我正在 Mozilla 3 上以编程方式创建道场树,如下所示

var store = new dojo.data.ItemFileReadStore({
 "id": "treeSt",
 "data": _treeData
    }
);
var model = new dijit.tree.ForestStoreModel({
 "jsId": "tModel",
 "store": store,
 "rootId": "tems",
 "rootLabel": "TEMS",
 "query": {

“类型”:“根” }, “childrenAttr”:[“孩子”] });

var tree = new dijit.Tree({
 "id": treeId,
 "model": model,
 "openOnClick": false,
 "onClick": setSelectedNode
    }
);

每次将一个节点添加到树中时,我都会更新我的全局变量_treeData,销毁并重新创建树。 _treeData 具有树的所有 json 数据。有没有其他方法可以维护树数据而不必维护全局变量?

此外,当我尝试使用 dojo.toJson(_treeData) 序列化 _treeData 时,我收到一个错误 - firebug 控制台中的“递归过多”。有没有其他方法可以做到这一点?

提前感谢您的帮助。

【问题讨论】:

标签: dojo


【解决方案1】:

您可以在 dojo.data.ItemFileReadStore 上设置 'url' 属性并从服务器加载数据。

对于refresh the store,我们必须调用 fetch() 函数。

如果您可以使用 ItemFileWriteStore,您可以使用 newItem() 函数仅添加新项目,而不是更改整个商店。

更多关于商店的信息,请访问http://www.dojotoolkit.org/reference-guide/quickstart/data/usingdatastores/faq.html

希望对你有帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多