extjs повторно использовать объект - PullRequest
2 голосов
/ 18 июня 2010

Если бы у меня было:

var x  = new Ext.form.formPanel({
});

Я хотел бы повторно использовать в двух местах, например:

var panel1 = new Ext.panel({ items:[x] });
var panel2 = new Ext.panel({ items:[x] });

Попробовал метод Ext.extend, но он не работал.Если я это сделаю, он будет отображаться только один раз на странице.

Ответы [ 2 ]

1 голос
/ 13 октября 2010

вы можете создать свой собственный класс formPanel, а затем создавать его каждый раз, когда захотите

MyForm = Ext.extend(Ext.form.FormPanel, {
  title: 'My Personal Form',
  width: 400,
  height: 250,
  padding: 10,
  initComponent: function() {
    this.items = [
        {
            xtype: 'textarea',
            anchor: '100%',
            fieldLabel: 'Label'
        },
        {
            xtype: 'textfield',
            fieldLabel: 'Label',
            anchor: '100%'
        }
    ];
    MyForm.superclass.initComponent.call(this);
  }
});

var panel1 = new Ext.panel(new MyForm({id:'test1'}));
var panel2 = new Ext.panel(new MyForm());

Я вставляю в первую панель свойство id, но вы можете вставить что-нибудь еще. Вы также можете изменить стандартную конфигурацию вашей формы, переписав конфигурацию

1 голос
/ 18 июня 2010

Необходимо создать два объекта Ext.form.FormPanel, так что вам придется сделать что-то похожее на то, что показано ниже:

var x  = new Ext.form.FormPanel({
});

var y  = new Ext.form.FormPanel({
});

var panel1 = new Ext.Panel({ items:[x] });
var panel2 = new Ext.Panel({ items:[y] });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...