我的需求:
左边栏是一个树型菜单,点击树型菜单里面的节点,右边的 tabpanel 里面用 iframe 显示页面内容。但是当我关闭了这个 tabpanel 的 item 时,不真正销毁它,而是停留在内存中。目前这样已经基本实现了。但是有一个奇怪的现象。看下面这段代码:
const tabId = 'm' + re.data.Id; const url = re.data.url + "&id=" + re.data.Id; console.log(`tabId: ${tabId}`); const existItem = Ext.getCmp(tabId); if (existItem) { if (!this.tabpanel.items.get(tabId)) { this.tabpanel.add(existItem); }
this.tabpanel.setActiveTab(existItem);
this.tabpanel.updateLayout(); return; }
当我去打开之前关闭的某个tabpanel item 时,右边显示出来的内容与这个 tab item 所对应的模块不匹配。比如有 a / b / c ,我可能打开 a 时,显示了 c 模块里面的内容。