не работает после tbpanel Extjs Modern - PullRequest
0 голосов
/ 06 ноября 2018

Событие Afterrender не работает для моего компонента tabpanel. код моей вкладки:

Ext.define('Admin.view.tabs.Tabs', {
extend: 'Ext.tab.Panel',

shadow: true,
cls: 'demo-solid-background',
tabBar: {
    layout: {
        pack: 'center'
    }
},
activeTab: 1,
defaults: {
    scrollable: true
},
items: [
    {
        title: 'Tab 1',
        html : 'By default, tabs are aligned to the top of a view.',
        cls: 'card'
    },
    {
        title: 'Tab 2',
        html : 'A TabPanel can use different animations by setting <code>layout.animation.</code>',
        cls: 'card'
    }
],
listeners: {
    afterrender: function(corpse) {
        console.log('afterrender');
    }
}});

Эта панель вкладок, которую я использую для просмотра, добавила в основной вид вот так:

doCompose: function (to) {
    var me = this,
        composer = me.composer,
        view = me.getView(),
        viewModel = me.getViewModel(),
        toField;

    me.hideActions();

    if (!composer) {
        me.composer = composer = view.add(
            {
            xtype: 'compose',
            flex: 1                    
        });

        if (to) {
            toField = me.lookupReference('toField');
            toField.setValue(to);
        }

        viewModel.set('composing', true);
    }
}

Составь, это моя формпанель, которая содержит табпанель. Я пытаюсь использовать пример из официальных шаблонов ExtJs Sencha. Просмотр для мобильного профиля составить письмо https://github.com/syscobra/extjs-admin-dashboard-template/tree/master/modern/src

1 Ответ

0 голосов
/ 06 ноября 2018

Как я уже сказал, в современной TabPanel Ext-JS 6 нет события последующего вывода. Вместо этого вы можете использовать painted, вот FIDDLE

listeners: {
    painted: function () {
        //your code
    }
}
...