动态添加项目到边框视口

时间:2011-07-29 13:38:23

标签: extjs javascript extjs4 viewport

我想首先创建一个空视口(layout:border),然后添加项目,最后渲染和显示。 但是当我创建了viewport元素时,它会抛出一个错误,说:

  

未捕获的TypeError:无法读取未定义的属性'flex'

这是我的代码:

<script type="text/javascript" src="ext-4.0.2a/bootstrap.js"></script>
<script>
Ext.require(['*']);
Ext.onReady(function() {
    Ext.QuickTips.init();

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

    var north = blablabla...
    viewport.add([north,south]);

    viewport.doLayout();
});
</script>

1 个答案:

答案 0 :(得分:7)

根据docs提供的说明:

  

BorderLayout的区域在渲染时固定,此后,其子组件可能无法删除或添加。要在BorderLayout中添加/删除组件,请将它们包装在另一个Container中。由BorderLayout直接管理。

顺便说一下

  

使用边框布局的任何容器必须都有一个带有区域的子项:'center'