在 vbox 上设置 autoHeight 不会设置高度

Setting autoHeight on vbox doesn't set height

我正在使用 ExtJs 3.4.0。

我的自动高度 属性 和布局有问题:'vbox'。

我希望设置 autoHeight: true 会自动为所有包含元素设置 vbox 的高度。但是,none 个元素是可见的。只有当我将高度设置为某个数字时它们才会变得可见,比如高度:400。是否可以在 vbox 上设置 autoHeight 属性?

我的密码是here

Ext.onReady(function () {

    var panel = new Ext.Panel({
        renderTo: Ext.getBody(),
        height: 400,
        items: [{
            layout: 'vbox',
            autoHeight: true,
            height: 'auto',
            items: [{
                layout: 'form',
                items: {
                    xtype: 'textfield',
                    fieldLabel: 'first test'
                }
            }, {
                layout: 'form',
                items: {
                    xtype: 'textfield',
                    fieldLabel: 'second test'
                }
            }]
        }]
    })

});

您忘记了父元素布局:

Ext.onReady(function () {

    var panel = new Ext.Panel({
        renderTo: Ext.getBody(),
        height: 400,
        layout: 'fit', // This is forgotten. 
        items: [{
            layout: 'vbox',
            items: [{
                layout: 'form',
                items: {
                    xtype: 'textfield',
                    fieldLabel: 'first test'
                }
            }, {
                layout: 'form',
                items: {
                    xtype: 'textfield',
                    fieldLabel: 'second test'
                }
            }]
        }]
    })

});