重新排序子面板

Reorder sub panels

我想在 ExtJS 6.6 现代面板中重新排序面板。

在图像存档中,我想要动态添加查询条件的查询表单。每个条件都是一个单独的面板,其中包含该条件的特定字段。它们在 vbox 布局中添加(如行)。条件可能是 ANDed 和 ORed,这意味着条件顺序很重要。在表格中,我想移动条件up/down。

我解决这个问题的方法是移除面板,然后将其插入新位置。

我在 https://fiddle.sencha.com/#view/editor&fiddle/2opr

有一个样本 fiddle

要移动的面板已删除,但再也没有插入。

当我用谷歌搜索这个时,出现了很多结果,但它们显示了旧版经典图形用户界面(调用视图的 doLayout 方法)的解决方案,我使用的是 6.6.0 modern,其中没有 doLayout 方法。

无需从容器中移除面板,显然移除会破坏面板。

只需从这里更改:

var item = this.removeAt(index);

对此:

var item = Ext.ComponentQuery.query('#' + itemId)[0];