道场树维护问题

时间:2010-09-24 13:11:51

标签: dojo

我在 Mozilla 3 上以编程方式创建了一个dojo树,如下所示

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": {

“type”:“root”      },  “childrenAttr”:[“孩子们”]     });

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

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

此外,当我尝试使用dojo.toJson(_treeData)序列化_treeData时,我在firebug控制台中收到错误 - “Too Much Recursion”。还有其他办法吗?

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

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

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

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

更多信息rgarding商店位于http://www.dojotoolkit.org/reference-guide/quickstart/data/usingdatastores/faq.html

希望它有所帮助。