2
xtype: 'component',
                        cls: 'headerComponent',
                        id: 'RequirementHeader' + i,
                        itemId: 'requirementHeaderViewID-' + i,
                        html: arrReqTplHeader,
                        constructor: function (config) {
                            var me = this,
                                currentConfig = me.config;
                            me.fireEvent('initialize', me);
                        },
                        initialize: function (obj) {
                            var me = this;
                            me.element.down('img').on('tap', me.imageTap, this, me);                            
                        }, imageTap: function (obj) {
                        alert("it doest reach here");
                        }

私はこのコンポーネントを sencha touch に持っており、テスト環境で使用すると問題なく動作しますが、プロジェクトをビルドするとすぐに、ビルド バージョンの初期化関数が呼び出されません。誰か助けてください。私はすでに問題をグーグルで検索しようとしましたが、役に立ちません。

4

1 に答える 1

1

オーバーライドするときは、親メソッドを呼び出すことを忘れないでくださいinitialize

initialize: function (obj) {
    var me = this;
    me.callParent(arguments); 
    me.element.down('img').on('tap', me.imageTap, this, me);
}

そして、この場合、初期化は常に呼び出されるため、コンストラクターは必要ないと思います。

于 2014-04-25T15:39:02.110 に答える