2014-01-23 4 views
0

У меня возникли трудности с очень странной проблемой. Мой динамически созданный контейнер не втягивается в существующий.Ext JS добавить контейнер в контейнер

var patientContainer = new Ext.container.Container(id:'patientContainer'+ rec.data.patientId, style: {height: '500px', width:'500px', 
                borderColor:'#000000', borderStyle:'solid', 
                borderWidth:'1px'}}); 

// exsisting контейнер

cont.add(patientContainer); 
cont.doLayout(); 

Значение FR контейнера ID присутствует. Я также проверил, что нет ничего плохого в существующем контейнере cont Я что-то упустил?

UPDATE: с помощью этого кода ничего не меняет

 var patientContainer = Ext.create('Ext.container.Container', { 
         id:'patientContainer'+ rec.data.patientId, 
          width:400, 
          height:400,          
           style: { 
           borderColor:'#000000', 
           borderStyle:'solid', 
          borderWidth:'1px' 
            } 

        }); 

UPDATE: Ниже приведен скриншот консоли вывода. Первый из них является созданным контейнером, а второй - последним. enter image description here

+0

Опубликовать полный пример, отдельные фрагменты кода, в которых вы даже не показываете контейнер, не полезны. –

+0

Я даже не могу сделать скрипку: Застрял здесь: https://fiddle.sencha.com/#fiddle/2t6 – Jacob

+1

Потому что в коде есть синтаксические ошибки ... –

ответ

1

Конфигурации ExtJS передаются как объекты, а не как параметры.

var patientContainer = new Ext.container.Container({ 
    id:'patientContainer'+ rec.data.patientId, 
    height: '500px', 
    width:'500px', 
    style: { 
     borderColor:'#000000', 
     borderStyle:'solid', 
     borderWidth:'1px' 
    } 
}); 

Обратите внимание на дополнительные {в начале и конце. Также рекомендуется использовать Ext.create('Ext.container.Container', { ... });, потому что он заботится о загрузке классов, чего нет у нового ключевого слова.

+0

См. Обновление – Jacob

+0

Обычно вы не должны указывать высоту и ширину в стиле, но как конфигурацию самого контейнера, поскольку большинство контейнеров динамически вычисляют высоту и ширину и устанавливают таким образом переопределение стилей элементов. Хотя динамический макет, подобный 'fit', больше подходит для контейнеров, поэтому они берут размер его содержимого (или он является родителем, когда родитель использует подходящий). – Tseng

+0

Хорошо, я собираюсь попробовать ... – Jacob

Смежные вопросы