2013-07-27 143 views
0

我有一個問題,導航,我的網頁看起來是這樣的:導航與推不工作

Ext.define('MyApp.view.MeinView', { 
    extend: 'Ext.navigation.View', 

    config: { 
     items: [ 
      { 
       xtype: 'formpanel', 
       title: 'MyApp', 
       id: 'StartAnsicht', 
       items: [ 
        { 
         xtype: 'list', 
         docked: 'top', 
         height: 200, 
         ui: 'round', 
         itemTpl: [ 
          '<div>{titel}: {inhalt}</div>' 
         ], 
         store: 'EintragStore' 
        }, 
        { 
         xtype: 'button', 
         docked: 'bottom', 
         id: 'NeuerEintrag', 
         itemId: 'mybutton1', 
         ui: 'action', 
         text: 'New' 
        } 
       ] 
      } 
     ], 
     listeners: [ 
      { 
       fn: 'onNeuerEintragTap', 
       event: 'tap', 
       delegate: '#NeuerEintrag' 
      } 
     ] 
    }, 

    onNeuerEintragTap: function(button, e, eOpts) { 
     this.push(Ext.create("MyApp.view.AddAnsicht", { 
      title: "New Item" 
     })); 
    } 

}); 

和:

Ext.define('MyApp.view.AddAnsicht', { 
    extend: 'Ext.form.Panel', 

    config: { 
     id: 'AddAnsicht', 
     items: [ 
      { 
       xtype: 'button', 
       docked: 'bottom', 
       id: 'NeuSubmit', 
       itemId: 'mybutton', 
       ui: 'confirm', 
       text: 'Add' 
      } 
     ], 
     listeners: [ 
      { 
       fn: 'onNeuSubmitTap', 
       event: 'tap', 
       delegate: '#NeuSubmit' 
      } 
     ] 
    }, 

    onNeuSubmitTap: function(button, e, eOpts) { 
     var inhalt = Ext.getStore('EintragStore'); 

     inhalt.add({ inhalt: '1', titel: '2' }); 
     inhalt.sync(); 

     this.push(Ext.create("MyApp.view.MeinView")); 
    } 

}); 

問題:當我到達第二側和點擊我得到的按鈕:

Uncaught TypeError: Object [object Object] has no method 'push' 

如何避免這種情況?

回答

1

的錯誤是從this.push(Ext.create("MyApp.view.MeinView"));

您在MyApp.view.AddAnsicht做this.push,這是FormPanel中,但是,FormPanel中沒有推法。

這就是爲什麼Uncaught TypeError: Object [object Object] has no method 'push'錯誤。

您正在試圖推到MyApp.view.MeinView (navigation View)MyApp.view.AddAnsicht (form Panel),但是,這是不對的..

你不能推導航視圖進入FormPanel中,但你可以把FormPanel中到導航視圖。

你真正想做什麼?

+0

我可以將兩個panals添加到導航視圖,然後使用push? – gurehbgui

+0

是的,您可以使用推送 – Viswa

+0

或如何添加s.th來將您想要的面板添加到導航視圖中。像this.pop()去看到previeous視圖 – gurehbgui