1

私のプロジェクトではwidget alias、「表示」で以下のコードを作成しましたnotifications。では、「コントローラー」のすべてのアイテムにアクセスするにはどうすればよいですか?

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];

それは私に頭痛と多くのエラーを与えるだけです。

また、次のようにComponentQueryを使用してみました。

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

これは最初の子のみを取得し、他の子アイテムは取得しません。

4

1 に答える 1

2

コンポーネントの任意のプロパティを使用して、コンポーネントクエリでコンポーネントを識別できます。たとえばrefId : 'myMonthlyStatus'、最後のコンテナにプロパティを追加すると、どこからでもそれを見つけることができますquery('container [refId=myMonthlyStatus]')

于 2013-03-19T06:52:15.113 に答える