ExtJS:动态添加项目到视口区域

时间:2011-05-19 19:30:09

标签: javascript extjs

假设我在一个文件中有一个JS,它创建了一个Viewport

Ext.create('Ext.container.Viewport', {
    layout: 'border',
    items: [
        {
            region: 'center'
        }, 
        ...
    ]
});

现在假设我有另一个随后使用此组件定义加载的JS文件:

{
    contentEl: 'content',
    height: '100%'
}

如何将contentEl: 'content'的该组件添加到'center'区域?

3 个答案:

答案 0 :(得分:4)

var viewPort = Ext.create('Ext.container.Viewport', {
    layout: 'border',
    items: [
        {
            region: 'center',
            id:'centerViewPortId'
        }
        ]
});

//your second javascript file
Ext.onReady(function(){
    var contentEl = Ext.create('Ext.Component', {
        contentEl: 'content',
        renderTo: Ext.getBody()
    });
viewPort.getComponent('centerViewPortId').add(contentEl);
});

答案 1 :(得分:3)

var viewpoert = Ext.create('Ext.container.Viewport', {
    layout: 'border'
});

anoter文件;

var contentEl = Ext.Create('Ext.Something.What.You.Want', {
     region: "center"
});

最后:

viewport.add(contentEl);

答案 2 :(得分:1)

此链接仍然是谷歌搜索结果的首选,所以我想我会添加另一个简洁的解决方案:

var viewPort = Ext.create('Ext.container.Viewport', {
    layout: 'border'
});

//your second javascript file
Ext.onReady(function(){
    var contentEl = Ext.create('Ext.Component', {
        contentEl: 'content',
        region: 'center',
        renderTo: Ext.getBody()
    });
viewPort.add(contentEl);
});