2013-03-19 80 views
1

在我的項目中,我在notifications的「視圖」中爲以下代碼創建了widget alias。現在,如何訪問「Controller」中的每個項目?如何在extjs中獲得項目

extend: 'Ext.panel.Panel', 
alias: 'widget.notifications', 
layout: 'fit', 
items:[{ 
    xtype: 'container', 
    layout: {type: 'vbox', align: 'stretch'}, 
    items: { 
     xtype: 'container', 
     flex:1, 
     layout: {type: 'vbox', align: 'stretch'}, 
     items:[{ 
      xtype: 'container', 
      flex: 1, 
      items: [{ 
       xtype: 'container', 
       height: 20,     
       html: "This week",     
      }, 
      { 
       xtype: 'container', 
       flex: 1, 
       layout: {type: 'vbox', align: 'stretch'}, 
       items: [{ 
        xtype: 'container', 
        height:20, 
        html : 'show submit status here' 
       }, 
       { 
        xtype: 'container', 
        flex: 1, 
       }] 
      }] 
     }, 
     { 
      xtype: 'container', 
      flex: 1, 
      layout: {type: 'vbox', align: 'stretch'}, 
      items: [{ 
       xtype: 'container', 
       height: 20, 
       html: "This month" 
      }, 
      { 
       xtype: 'container', 
       flex: 1, 
       layout: {type: 'vbox', align: 'stretch'}, 
       items: [{ 
        xtype: 'container', 
        html: 'submit status of month here', 
        height: 20 
       }, 
       { 
        xtype: 'container', 
        flex: 1, 
       }] 
      }] 
     }] 
    } 
}] 

我想:

var notificationView = Ext.widget('NotificationView'); 
var childItem = notificationView.items.items[0].items.items[0].items.items[0].items.items[0]; 

這只是給了我頭痛和許多錯誤。

var childItem = notificationView.ComponentQuery.query('container>container>container>container'); 

哪隻獲得了第一個孩子,而不是其他子項:

我也使用ComponentQuery這樣的嘗試。

回答

2

您可以使用組件的任意屬性在組件查詢中標識它。例如,如果您將屬性refId : 'myMonthlyStatus'添加到最後一個容器,則可以從任何地方使用query('container [refId=myMonthlyStatus]')找到它。

+0

有沒有像'refId'?因爲我找不到它。 – 2013-03-19 07:00:19

+0

甚至如果我在'notificationView'變量中改變了某些東西,我在我的視圖中看不到任何更改。我甚至調用了'this.callParent()'。 – 2013-03-19 07:02:08

+0

沒有refId屬性 - 我做了它,告訴你可以在ComponentQuery中使用任何你想要的屬性。再次仔細閱讀我的答案。 – dbrin 2013-03-19 17:43:53