ExtJs4 динамически загружает элементы на панели инструментов - PullRequest
2 голосов
/ 17 сентября 2011

Как я могу динамически загружать элементы на панели инструментов ExtJs 4?Я хочу загрузить элементы из JSON.

Я попробовал загрузчик, но он стал головной болью.

Ext.define('Backend.view.Nav' ,{
    alias: 'widget.Nav',
    extend: 'Ext.toolbar.Toolbar',
    initComponent: function() {
        this.items = [
        {
            iconCls: 'freewinder',
            text: 'Freewinder'
        },
        {
            iconCls: 'application',
            text: 'Applikationen',
            xtype: 'splitbutton'
        },
        {
            iconCls: 'component',
            text: 'Komponenten',
            xtype: 'splitbutton'
        },
        '-',
        {
            emptyText: 'Suche ...',
            xtype: 'textfield'
        }];     
        this.callParent(arguments);
    }
});

1 Ответ

3 голосов
/ 17 сентября 2011

Вы можете использовать add метод Ext.toolbar.Toolbar для динамического добавления элементов после создания панели инструментов: http://docs.sencha.com/ext-js/4-0/#!/api/Ext.toolbar.Toolbar-method-add

Как вы хотите, чтобы это работало? Если появится панель инструментов, сделайте AJAX-запрос, и они добавят пункты меню - или сервер при загрузке страницы даст клиентскому приложению какой-нибудь JSON, содержащий элементы меню, или как вы хотите, чтобы он работал точно?

В случае, если сервер выводит JSON при загрузке страницы, вы можете просто сделать this.items = jsonItems.

...