我有一个 EXTJS 网格,其中包含 2 个仅带有图标的操作列。如果 IsApproved = true,如何设置渲染器以隐藏图标?我试过 this.columns[0].items[0].icon = ''; 但得到 this.columns 的错误未定义。
columns: [
{ header: 'Name', dataIndex: 'Name', flex: 1 },
{ header: 'Login', dataIndex: 'Login', flex: 1 },
{ header: 'Registered', dataIndex: 'RegisteredOn', flex: 1 },
{ header: 'Invited', dataIndex: 'InvitationSent', flex: 1 },
{ xtype: 'actioncolumn',
width: 40,
header: 'Invite',
tdCls: 'clickable',
renderer: function (value, metadata, record) {
if (record.get('IsApproved')) {
//HIDE ICON
} else {
//SHOW ICON
}
},
items: [{
icon: '/images/icon_email.png',
tooltip: 'Invite',
scope: this,
handler: this.inviteClick
}]
},
{ xtype: 'actioncolumn', width: 40, header: 'Edit', tdCls: 'clickable', items: [{
icon: '/images/pencil.png',
tooltip: 'Edit',
scope: this,
handler: this.editClick
}]
}
],