我使用dijit.tree.ForestStoreModel
作为模型的树和JsonRestStore
作为商店。
初始化树时,它工作正常。之后,我想手动(而不是从服务器)向商店添加另一个项目来更新树。
我的问题是如何在不通过休息将项目发布到服务器的情况下进行本地存储。我使用store.newItem()
但没有成功。
答案 0 :(得分:1)
我认为在这种情况下,您可能不希望实际使用JsonRestStore。根据您的使用情况,您可能希望使用其他类型的dojo存储,如Memory,并在树的初始化时,通过其他方法从服务器加载数据。
答案 1 :(得分:0)
最后,我能够找出向服务器发出的请求。那是jsonRestStore.save()
,它将脏数据提交给服务器。
在我从代码中删除它之后,我使用以下内容将新数据添加到树中:
jsonRestStore.fetchItemByIdentity({
identity: parent.path,
onItem: function (parent) {
store_cloud.newItem(child, {
parent: parent,
attribute: 'children'
});
}
});
这里我有一个子节点和父节点。 'children'属性也用于引用。