【问题标题】:Why will my ExtJS tab will not show items with a border layout为什么我的 ExtJS 选项卡不会显示带有边框布局的项目
【发布时间】:2011-05-27 16:41:13
【问题描述】:

截至目前,我的网站中有一个可用的选项卡面板,当我执行操作时,一个选项卡会添加到选项卡面板中。现在选项卡使用以下项目定义正确呈现所有项目

    return [{
        xtype: 'panel',
        region: 'north',
        autoHeight: true,
        items: this.buildToolbar()
    }, {
        xtype: 'panel',
        region: 'center',
        autoHeight: true,
        items: [{
            xtype: 'fieldset',
            title: 'Details:',
            collapsible: true,
            autoHeight: true,
            items: [this.detailForm]
        }]
    }];

但是,我现在只想在此选项卡中添加一个东部可折叠面板,因此在面板的配置中我添加了layout: 'border',。现在我的选项卡内没有呈现任何内容。如果我随后注释掉我的 layout 电话,一切都会正常。

为什么当这个面板设置为边框布局时什么都不渲染?

【问题讨论】:

    标签: javascript layout panel extjs


    【解决方案1】:

    删除autoHeight: true(在每个级别——不要永远在 BorderLayout 中使用它)并将layout: 'fit' 添加到您的中心区域。此外,不确定将表单添加到您的字段集中是您想要的 - 可能反过来会更有意义。

    【讨论】:

    • 删除自动高度不起作用,但你的 layout: 'fit' 让我思考。我使视口的中心区域(包含 TabPanel 的面板)具有布局:'fit',并且修复了它!谢谢!
    • 至于表单外的FieldSet,我是故意这样做的,作为一种轻量级的方式来分隔页面上的不同组件。可折叠面板的标题太大,这似乎效果更好(至少在美观方面)
    • autoHeight:true 表示“让浏览器根据内容管理高度”。在一般的 Ext 布局中,这几乎不是你想要的。在 BorderLayouts 中,它绝对不是你想要的。是的,您应该始终在嵌套布局层次结构中的每个级别指定适当的布局。
    猜你喜欢
    • 2021-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-16
    • 1970-01-01
    相关资源
    最近更新 更多