我想动态更改我的商店。我有 extJs 树面板,作为 window.widget 的项目。我想动态更改此面板的存储。我的逻辑如下:aJax 请求被发送到我的控制器并且控制器返回 jsonObject。我不会将控制器返回的这个 jsonObject 设置为树面板的新存储,并且只刷新树面板。这是我到目前为止所做的,但动态改变是行不通的。请记住,我用于存储的 json 对象已创建并存在于内存中。一切正常,直到新商店出现并且树没有以我尝试的方式进入商店。
我的店铺:
var store = Ext.create('Ext.data.TreeStore', {
root: {
id: 'rootNode',
expanded: true,
children: childrenParam
}
});
和我的树形面板:
xtype: 'treepanel',
region: 'west',
id: 'navigation',
title: 'Tree of builds',
width: "30%",
height: "100%",
layout: 'fit',
rootVisible: false,
store: store,
split: true,
autoScroll: true,
collapsible: true,
floatable: false
...
我尝试过的是:
var myPanel = Ext.getCmp('navigation');
myPanel.store.tree.root.childNodes = result;
其中 result 是从我的控制器返回的 json 对象。此 json 对象很好,但更改存储无法正常工作。
提前感谢您的帮助!