Ext Js: динамически добавлять вложенные панели - PullRequest
1 голос
/ 18 августа 2011

У меня есть несколько записей одного типа, которые я хочу показать на экране. Я думал о создании нескольких панелей, которые будут печатать данные каждой записи. Я выбрал это решение, потому что структура данных слишком сложна для печати в простой сетке. Вот упрощенный пример этой структуры:

{
    label: 'myLabel',
    {
        attr1: 'value1',
        attr2: 'value2'
    }
    startValidityDate: oneDay,
    endValidityDate: anotherDay
}

Я пытаюсь добавить динамически вложенные панели в мою текущую панель:

var myStore = new Ext.data.Store({
    id: 'myStore',
    restful: true,
    idProperty: 'OID',
    root: 'tbas',
    proxy: myProxy,
    reader: myReader,
    autoLoad: false, 
    listeners: {
        'load': function(data){
        var records = data.getRange();
        var currStore = null;
        for(var i=0; i<records.length; i++) {
            currStore = new Ext.Panel({
            layout:'vBox',
            items: [{
                xtype: 'textfield',
                fieldLabel: I18nManager.get('label_ttbaUI_label'),
                name: 'tbaLabel',
                value: records[i].data.tbaLabel
                },{
                xtype: 'textfield',
                fieldLabel: I18nManager.get('label_ttbaUI_label'),
                name: 'tbaOid',
                value: records[i].data.tbaoid
                }] 
            });
        recordList.add(currStore);
console.log("------------------------------");
console.log(currStore);
        }
        recordList.doLayout();
        }
    }
});

var recordList = new Ext.Panel({
    id: 'recordList',
    renderTo: 'recordPart',
    layout:'vBox',
    title: I18nManager.get('label_ttbaUI_selected_tariffs')
});
recordList.doLayout();

В консоли firebug объекты пользовательского интерфейса выглядят нормально.

Моя проблема в том, что элементы recordList не видны

Я вижу, что они существуют в консоли FB, но они не очень хорошо напечатаны на экране.

Я забыл что-то, что делает элементы скрытыми? или плохо напечатано? Я уверен, что это проблема CSS, некоторые проблемы с ext-all.css: когда я удаляю содержимое этого CSS, я вижу свои поля

Должно быть что-то не так в том, как я написал код, чтобы это вызывало проблему рендеринга WDYT ???

...