代码之家  ›  专栏  ›  技术社区  ›  Natkeeran

ExtJs添加面板作为选项卡项

  •  1
  • Natkeeran  · 技术社区  · 15 年前

    setup 其中,根据用户从左侧面板树中选择的项加载选项卡。我的目标是根据用户的选择只将相关项加载到特定选项卡。

    第一次,我可以添加以下项目:

        var tab = tabs1.getItem('Orders');   
        tab.remove(0);
        tab.add(pane33);
        tab.doLayout(); 
    

    但是,当用户再次选择该项时,面板项已经被删除,并且会出错( c.getPositionEl().dom is undefined

    错误是由于项目被删除或销毁。似乎没有替换选项卡项或刷新/重新加载面板的选项。

    怎么处理?

    谢谢

    2 回复  |  直到 15 年前
        1
  •  2
  •   Brian Moeskau    15 年前

    Container.remove 具有可选的第二个参数 autoDestroy ,这意味着要删除的组件也将被永久销毁(对于TabPanels,默认为 是的 ). 您只实例化了一次您的子组件,所以在它们被销毁之后,它们就不能再被添加了。任何一个通过 autoDestroy: false

        2
  •  0
  •   Halo    15 年前

    您可以将该选择标记为“选中”,并在鼠标操作时进行检查。作为一种简单的方法。