编辑器作为变量是不可编辑的

时间:2011-06-09 11:42:43

标签: extjs

在我的应用程序中,我创建了几个包含表单和编辑器网格的模态窗口。为了重新使用组件,我创建了组合,字段文本,复选框和其他东西作为变量,并且只将necesarry添加到每个窗口。其中一个变量是一个editorgrid,xtype:'editorgrid',还有一个问题:

如果我将变量myEditorGrid添加到面板中,它在第一次打开窗口时工作正常,但是第二次任何窗口必须呈现相同的编辑网格,那么这些字段就不能再编辑了。

如果我在面板中创建了editorgrid(并且不使用变量),那么每次打开窗口时它都可以正常工作,但是我需要将相同的代码一遍又一遍地复制并粘贴到所有窗口,并且这不是很专业。

我认为问题是变量没有被破坏,并确保窗口关闭,但我不知道如何销毁变量,即使这是解决方案。

有什么想法吗?

由于

1 个答案:

答案 0 :(得分:0)

您不能以这种方式重用EditorGrid,因为它的列模型在使用后会被销毁。

重用组件的最佳方法是使用Ext.extend方法described here,然后在initComponent中使用类似的内容。

initComponent : function() {
    this.cm = new Ext.grid.ColumnModel({
        columns: [
          //define columns here
        ]
    });
    this.ds = new Ext.data.JsonStore({
        //store config
    });
    //...
}