Sencha touch Sencha Touch 2-我的表单不显示

Sencha touch Sencha Touch 2-我的表单不显示,sencha-touch,extjs,sencha-touch-2,Sencha Touch,Extjs,Sencha Touch 2,我是新来的森查触摸。我试图定义一个表单(因为我想重复使用它),但无法在屏幕上显示它 这是我的表格代码: Ext.define('WSCP.view.form.PersonForm' , { extend: 'Ext.form.Panel' , requires: [ 'WSCP.view.text.IdText' ,'WSCP.view.text.FirstNameText' ,'WSCP.view.text.LastNameTe

我是新来的森查触摸。我试图定义一个表单(因为我想重复使用它),但无法在屏幕上显示它

这是我的表格代码:

Ext.define('WSCP.view.form.PersonForm' , {
    extend: 'Ext.form.Panel'

    , requires: [
        'WSCP.view.text.IdText'
        ,'WSCP.view.text.FirstNameText'
        ,'WSCP.view.text.LastNameText'
        ]
    ,xtype: 'personform'

    ,config: {
        items: [{
            xtype: 'fieldset'
            ,title: 'Who are You'
            ,instructions: 'enter your data'
            ,items: [
                {
                    xtype: 'textfield',
                    name : 'firstName',
                    label: 'First Name'
                }
                ,{ xtype: 'idText' }
                ,{ xtype: 'firstNameText' }
                ,{ xtype: 'lastNameText' }
            ]
        }]
    }   

    ,initialize: function() {
        console.log('initialize form');
        this.callParent();
    }
});
在我看来,这就是代码:

Ext.define('WSCP.view.HomeView' , {
    extend: 'Ext.Panel'


    ,xtype: 'homecard'

    , requires: [
        'WSCP.view.button.GetButton'
        ,'WSCP.view.button.GetOneButton'
        ,'WSCP.view.button.PutButton'
        ,'WSCP.view.button.PostButton'
        ,'WSCP.view.button.DeleteButton'
        ,'WSCP.view.form.PersonForm'
    ]

    ,config: {
        title: 'Home'
        ,iconCls: 'home'

        ,items: [
            {                
                xtype: 'titlebar'
                ,docked: 'top'
                ,title: 'Home'


                ,items: [
                    { xtype: 'getbutton' }
                    ,{ xtype: 'getOnebutton' }
                    ,{ xtype: 'putbutton' }
                    ,{ xtype: 'postbutton' }
                    ,{ xtype: 'deletebutton' }
                    ,{
                        text: 'Ping'
                        ,action: 'pingAction'
                        ,align: 'right'
                    }
                ]
            }   
                //WHY DOESN'T THIS WORK?
            ,{ xtype: 'personform' }
        ]
    }
});
非常感谢,,
Alex

我可以在这里重复这个问题

在实验中,我还试图通过引用将其动态添加到控制器中,结果如下

//有效
var myPanel=新的外部面板({
项目:[……] }); this.get….().add(myPanel)

//不起作用
var myPanel=new Ext.form.Panel({
项目:[……] }); this.get….().add(myPanel);

//但有效 var myPanel=new Ext.form.Panel({
身高:300, 项目:[……] }); this.get…().add(myPanel)`


当我设置height属性时,Ext.form.Panel开始工作。根据配置规范,默认情况下这是空的。如果你设置了高度,它在我说的不起作用的地方工作。请参见上文但可以工作。你的“PersonForm.js”在正确的文件夹(WSCP/view/form)中吗

另外,我可能错了,但我认为定义新别名(xtype)的方式如下:

Ext.define('WSCP.view.form.PersonForm' , {
extend: 'Ext.form.Panel'

, requires: [
    'WSCP.view.text.IdText'
    ,'WSCP.view.text.FirstNameText'
    ,'WSCP.view.text.LastNameText'
    ]
**,alias: 'widget.personform',**

您好,是的,PersonForm.js在正确的文件夹中:-)不太确定alias的功能。我尝试过使用它,但还没有成功。无论如何,谢谢!它显示了!我想我必须理解Panel和form.Panel之间的区别。谢谢!如果我找到更好的解决方案,我会给您发电子邮件