0

私は本当にシンプルなアプリを持っています: http://www.senchafiddle.com/#AREBJ . これは、いくつかのリンクを表示するビューで構成されています。それぞれをクリックすると、ターゲット値を含むポップアップが表示されます。アプリをビルドする前はすべて正常に動作しますが、ビルド後はリンクがまったく表示されません。リンクを表示するために、DataView コンポーネントを使用しています。以前、Ext.Component を使用して対処しようとしましたが、項目のいずれかがタップされたときに (および「ペイント」イベントも) イベントが発生しなかった理由がわかりません。これは、私が使用したい IconsScreen ビューの 2 番目のバージョンですが、イベントがなければ役に立ちません。

Ext.define('SF.view.IconsScreen', {
    extend: 'Ext.Component',
    xtype: 'icons-screen',
    require: [
        'SF.store.MainMenu'
    ],
    config: {
        tpl: new Ext.XTemplate('<ul class="menu-icons-list">',
            '<tpl for=".">',
                '<li class="icon">',
                    '<a target="{url}" style="background: url({icon})">',
                    '</a>',
                    '<span class="icon-text">{name}</span>',
                '</li>',
            '</tpl>',
        '</ul>'
        ),
        store : Ext.create('SF.store.MainMenu'),
        data : [],
        listeners : {
            painted : function(){
                this.onIconTap();
            }
        }
    },

    initialize : function() {
        var storeData = this.getStore().getRange(),
            tplData   = [];

        Ext.Array.each(storeData, function(item){
            tplData.push(item.getData());
        });

        this.setData(tplData);

        this.element.on({
            scope    : this,
            delegate : 'a',
            tap      : 'onIconTap'
        });

        this.callParent();
    },

    onIconTap : function(e, t) {
        this.fireEvent('icontap', e, t);
    }
});

ビルド可能なバージョンも添付しています: https://mega.co.nz/#!kEZiCTQT!ckFxSQz0qMScpIX1UvfZGxa0qeQfM9MVy8hynjdPHQ8

4

1 に答える 1