1

sencha touch 2.2.1 のコントローラの init 関数でビュー コンポーネントを取得することはできますか?

以下のコードを試してみると、3 つのログすべてで未定義になります。

refs: {
    mainPanel: '#HomeView'
}
init: function(){
    console.warn(this.getMainPanel());
    console.warn(this.mainPanel);
    console.warn(Ext.ComponentQuery.query('#getOffersButtonHomeView')[0]);
}

ビューのコード:

    Ext.define('DeviceAPIFramework.view.HomeView', {
    extend: 'Ext.Panel',
    xtype: 'HomeView',
    id: 'HomeView',
    requires: [
        'Ext.Button',
        'Ext.dataview.List'
    ],

    config: {
        items: [{
            xtype: 'panel',
            layout: 'hbox',
            margin: '5 0 15 15',
            items: [{
                xtype: 'button',
                text: 'Get Offers',
                itemId: 'getOffersButtonHomeView',
                id: 'getOffersButtonHomeView',
                ui: 'confirm',
                width: 150
            }]
        }, {

        .....

この場合の解決策はありますか?

ナビゲーションとパネルの表示には、Ext.ViewPort に追加した NavigationView(xtype でビューを表示するためのプッシュ メソッド) を使用しています。

4

1 に答える 1

2

ビューが初期化された後に呼び出されるコントローラーに起動関数があることが最終的にわかりました。

launch: function() {
    Ext.ComponentQuery.query('#getOffersButtonHomeView')[0].someMethod(someParameter);
},
于 2013-07-08T23:49:10.263 に答える