卡布局出错

时间:2012-07-31 07:10:54

标签: extjs4 extjs4.1

当应用启动时,它会显示screen1。然后,当我们点击按钮时,它会显示panel1panel2。我的代码如下;我添加panel2时收到错误。

launch: function() {


    Ext.create('Ext.container.Viewport', {
        layout: 'card',
        items: [
        { 
            xtype: 'panel', 
        items: { xtype: 'screen1' }
        },
        {
            xtype: 'panel',
            items: { xtype:'panel1' }
        }

        ] 
    }); 

}

一旦我添加另一个面板;我得到一个错误

TypeError: namespace is undefined
[Break On This Error]   

if (namespace === from || namespace.substring(0, from.length) === from) {

代码:

items: [
            { 
                xtype: 'panel', 
            items: { xtype: 'screen1' }
            },
            {
                xtype: 'panel',
                items: { xtype:'panel1' }
            },
            {
                xtype: 'panel',
                items: { xtype:'panel2' }
            }

        ] 

注意:我在Panel2

中添加了views: [ Panel2']

更新

Ext.define('MyApp.view.Panel2', {
    extend: 'Ext.tab.Panel',
    alias: 'widget.panel2',

    height: 250,
    width: 400,
    activeTab: 0,

    initComponent: function() {
        var me = this;

        Ext.applyIf(me, {
            items: [
                {
                    xtype: 'panel',
                    title: 'Tab 1'
                },
                {
                    xtype: 'panel',
                    title: 'Tab 2'
                },
                {
                    xtype: 'panel',
                    title: 'Tab 3'
                }
            ]
        });

        me.callParent(arguments);
    }

});

1 个答案:

答案 0 :(得分:0)

这很可能是因为你缺少了依赖关系。由于您没有发布应用程序定义,因此您需要在控制器中要求视图(或者,如果您还没有那么远,则需要应用程序本身的要求)。

在下载中查看/ examples / app / simple以了解它的设置要求。