Ext js: Как установить iconCls для столбца action, используя данные ответа ajax - PullRequest
0 голосов
/ 11 февраля 2020

Привет. Я пытаюсь отобразить значки, используя iconCls actioncolumn, как показано ниже:

xtype: 'actioncolumn',
                    header: moment().utc().subtract(1, 'days').format('MMM Do'),
                    itemId: 'cDayOne',
                    align: 'center',
                    dataIndex: 'Day1Status',
                    renderer: function (v, metadata, record) {
                        var c = this;
                        Ext.Ajax.request({
                            url: url to fetch data,
                            method: 'GET',
                            success: function (response) {
                                if (result.status_time_diff === 0) {
                                    c.tdCls = 'green';
                                } else if (result.status_time_diff < 3) {
                                    c.iconCls = 'yellow';
                                } else if (result.status_time_diff > 4) {
                                    c.iconCls = 'red';
                                }
                            }
                        });
                    }

Приведенный выше код не работает с вызовом ajax, если я удаляю вызов ajax и ассин c .iconCls = 'green' (любое жестко заданное значение) работает нормально.

Может кто-нибудь помочь по этому вопросу?

1 Ответ

0 голосов
/ 11 февраля 2020

Вы не можете изменить iconCls из асинхронной функции. Вызовите конечную точку ajax перед созданием grid компонента

...