1

在我的项目中,我想根据另一列中定义的特定值在列中添加不同的图片。我可以添加图片,但不能使用 If 条件。我的代码:

initComponent: function() {

    this.columns = [
   {header: 'ID du CPE', dataIndex: 'ID',  flex: 1},
       {header: 'Modèle', dataIndex: 'Modele', flex: 1},
   {header: 'Firmware', dataIndex: 'firmware', flex: 1},
   {header: 'Année MeS', dataIndex: 'annee', flex: 1},
       {header: 'Statut', dataIndex: 'statut', flex: 1},
   {header: 'Alerte', dataIndex: 'alerte', flex: 1, 

    renderer: function(value, metadata, record) {
        if (record.get('OK')) { 
        return '<img src="ressource/image/edit.png"/>';
    }}
   } 
    ];
    this.callParent(arguments);
}

网格的列由 JSON 文件填充。“statut”列填充了随机字符串,例如“OK”或“NOK”。我想要的是当“statut”列中的值为“OK”时将特定图片添加到“Alerte”列中,当值为“NOK”时添加另一张图片。

我真的不明白record.get的用法。我仍然不知道我是否只能通过在我的视图文件中添加代码来做到这一点。

4

2 回答 2

0

渲染器的第三个参数是渲染到该行的记录。所以你可以这样做

renderer: function(value, meta, record) {
        var val = record.get('statut');
        if (val  == 'OK') { 
            return '<img src="ressource/image/edit.png"/>';
        }else if (val == 'NOK') { 
            return '<img src="ressource/image/edit.png"/>';
        }
        return ''; // default -> no image at all
    }
} 

有关如何使用它的更多信息,请参阅完整的渲染器 api 参考

于 2013-06-12T09:58:52.293 回答
0

您还可以使用 viewConfig ,它是一个配置对象,将应用于网格的 UI 视图:

viewConfig: {
        getRowClass: function(record, rowIndex, rowParams, store){
                        if(record.get('statut')=='OK')
                        return  "OKimage.class"; //css class
                        else
                            return "NOKimage.class";
          }
  }
于 2013-06-12T10:07:49.873 回答