2012-04-04 53 views
1

因此,我正在構建我的第一個Sencha觸摸應用程序,並且遇到渲染我定義的Panel的問題。Sencha Touch 2 xtype不按預期方式工作

Login.js

Ext.define("Blog.view.Login", { 
    extend:'Ext.form.Panel', 
    requires : ['Ext.form.FieldSet', 'Ext.field.Email', 'Ext.field.Password'], 
    xtype: 'loginpanel', 

    config:{ 
    scrollable:true, 
    title: "Log In", 

    items:[ 
     { 
     html:"<center><h1>OkShit</h1></center>", 
     styleHtmlContent:true 
     }, 
     { 
     xtype:'fieldset', 
     items:[ 
      { 
      xtype:'emailfield', 
      name:'email', 
      placeHolder:'E-Mail' 
      }, 

      { 
      xtype:'passwordfield', 
      name:'password', 
      placeHolder:'Password' 
      } 
     ] 
     }, 
     { 
     xtype:'button', 
     text:'Log In', 
     style:{ 
      marginBottom:'20px' 
     } 
     }, 
     { 
     xtype:'button', 
     text:'Sign Up' 
     } 
    ] 
    } 

}); 

Main.js

Ext.define("Blog.view.Main", { 
    extend:'Ext.Container', 

    config:{ 
    items:[ 
     { 
     xtype :'loginpanel' 
     } 
    ] 
    } 
}); 

app.js

views: ['Main', 'Login'], 

我做了一些研究已經有人建議使用

alias: 'widget.loginpanel' 

我試過了,但它仍然沒有工作。有沒有人有任何解決方案?

編輯 這就是我現在所擁有的,它仍然沒有做任何事情=(

Ext.define("Blog.view.Login", { 
    extend:'Ext.form.Panel', 
    alias: 'widget.loginpanel', 
    requires : ['Ext.form.FieldSet', 'Ext.field.Email', 'Ext.field.Password'], ... 
+0

'別名:'widget.loginpanel''適用於我,檢查拼寫和大小寫錯誤,也放在之前的id不需要它應該很重要 – 2012-04-04 05:28:38

回答

3

基本上,它是不是真的有必要,因爲你已經定義的類中使用別名並在Sencha Touch 2中用xtype註冊。

您正在使用哪種瀏覽器?請查看是否有任何錯誤記錄在瀏覽器調試器中並粘貼在此處。你出去了。

+0

感謝您的答覆。有沒有錯誤,我用這個Chrome – denniss 2012-04-04 06:18:34

+0

我修改了一點你的源代碼,它工作正常。看看這兩個配置,它做了竅門。的xD 'Ext.define( 「Blog.view.Main」,{ 延伸: 'Ext.Container', 配置:{ \t全屏:真, \t佈局: '卡', 項目:[ { xtype:'loginpanel' } ] } });' – 2012-04-04 06:38:06

+0

太棒了!我需要佈局:'卡'! – denniss 2012-04-04 06:44:12