我正在使用ExtJS 6.0.2,我有一个具有以下信息的itemselector:

                               {
                                        xtype: 'itemselector',
                                        name: 'itemselector',
                                        id:'issuerSelector',
                                        buttons: ['add', 'remove', 'allleft','allright'],
                                        height: 300,
                                        width: '30%',
                                        store: 'ItemsStore',
                                        displayField: 'code_isin',
                                        valueField: 'id_valeur',
                                        fromTitle: "fromList",
                                        toTitle: 'toList',
                                        listeners: {
                                          afterrender: function (selector) {
                                              selector.onDisable();
                                          },
                                          change: 'someFuncHere'
                                        },
                                }


我想要的是,加载itemselector数据后,列表“ fromField”上的任何数据具有:

flag : 1


...应该以不同的方式绘制。 (注意:我不想为此执行“ onChange”事件,因为我希望它可以在负载而不是更改后识别)。

我试图在ItemSelector的更新后使用它:

Ext.getCmp('issuerSelector').viewConfig = {
                    getRowClass    : function( record ) {
                        if ( record.data.flag == 1 ) {
                            return 'newCss';
                        }
                    }
                }


...但是由于某种原因,即使删除了if,css也不会显示,新的CSS永远不会应用于itemSelector(这通常适用于网格)。因此,我在这里问是否有人可以帮助我找到解决该问题的方法。

最佳答案

问题在于viewConfig在渲染过程中已应用于视图。

您可能要检查的是grid.getView().getRowClass = function() ...是否有效。

10-08 03:33