2012-12-31 5 views
1

툴바에서 '로그인'을 탭하면 패널을 전환하려고합니다. 내 컨트롤러가 이벤트를 가져오고 내가 원하는 패널에 활성 항목을 추가하고 설정하여 전환합니다. 그러나 화면이 공백으로 유지되고 디버그 오류가 없습니다.패널에 sencha touch 2가 표시되지 않습니다.

이것은 내 패널의 코드입니다. 실수는 무엇일까요?

Ext.define('App.view.LoginView', { 
extend: 'Ext.Panel', 
xtype: 'loginpanel', 
alias: 'widget.loginView', 

fullscreen: true, 
layout: 'fit', 

items: [ 
    { 
     xtype: 'TopToolBar' 
    }, 
    { 
      xtype: 'formpanel', 
      items: [ 
      { 
       xtype: 'fieldset', 
       title: 'Login', 
       instructions: 'Have a great day!', 
       items: [ 
        { 
         xtype: 'emailfield', 
         name: 'email', 
         label: 'Email' 
        }, 

        { 
         xtype: 'passwordfield', 
         name: 'password', 
         label: 'Password' 
        } 
       ] 
      }, 

      { 
       xtype: 'button', 
       text: 'Login', 
       ui: 'confirm', 
       handler: function() 
       { 
        this.up('loginpanel').submit(); 
       } 
      } 
     ] 
    }]}) 

내 도구 모음 클래스의 코드는 :

Ext.define('App.view.TopToolBar', { 
extend: 'Ext.Toolbar', 
xtype: 'TopToolBar', 
dock: 'top', 
initialize: function() { 
    var loginButton = { 
     xtype: 'button', 
     text: 'Login', 
     ui: 'action', 
     handler: this.onLoginTap, 
     scope: this 
    }; 

    this.add(loginButton); 
}, 

onLoginTap: function(){ 
    console.log('login tap'); 
    this.fireEvent('loginBtnHandler', this); 
}}) 
+0

? 버튼을 누르거나 코드를 실행하려고 할 때? 클래스 만 정의하고 인스턴스를 생성하지 않는 것 같습니다. – A1rPun

+0

실제로, 그것은 문제였습니다. 나는 그들을 instanciate하지 않았다;) thx! (나는 또한 구성 요소에 레이아웃을 제공해야했다) –

+0

나는 당신이 그것을 받아 들일 수 있도록 질문에 대답해야 하는가? 그게 당신을 위해,이 사이트와 나를 위해 더 :) – A1rPun

답변

1

Ext.define으로 클래스를 정의합니다.

Ext.define('My.Toolbar', { 
    extend: 'Ext.Toolbar', 
    alias: 'widget.mytoolbar' 
    //configuration 
}); 

가와 생성 (인스턴스화) 클래스 Ext.create

var tlb= Ext.create('My.Toolbar', { 
    //configuration 
}); 
화면이 공백 않습니다