方案一:
{ title: '操作', key: 'operation', render: (_, record) => ( <div>
<Link to={`/hostMain/${record.hostId}`}><Icon type="edit"/>编辑</Link>
<span className="ant-divider"/>
<Popconfirm title="是否确认删除该记录?" onConfirm={() => this.hostState.deleteHost(record.hostId)}> {record.status === '正常' ? <a className="fgw-text-error"><Icon type="delete"/>停用</a> : ''} </Popconfirm>
</div>)
}
方案二:
在
render()函数之前添加自定义函数(主要处理多个状态,需要显示不同操作和状态值得情况可以这么处理,如果只是两个状态,建议使用方案一)
myStatus = (obj) => { console.log('obj', obj); if (obj.status === '正常') { return ( <span>
<a className="fgw-text-error"><Icon type="delete"/>停用</a>
<span className="ant-divider"/>
<a className="fgw-text-error"><Icon type="delete"/>从机柜上移除主机</a>
</span>);
} else if (obj.status === '未使用' && obj.cabinetId) { return ( <span>
<a className="fgw-text-error"><Icon type="delete"/>启用</a>
<span className="ant-divider"/>
<a className="fgw-text-error"><Icon type="delete"/>从机柜上移除主机</a>
</span>);
} else { return (''); } };
{ title: '操作', key: 'operation', render: (_, record) => ( <div>
<Link to={`/hostMain/${record.hostId}`}><Icon type="edit"/>编辑</Link>
<span className="ant-divider"/>
<Popconfirm title="是否确认该操作?" onConfirm={() => this.hostState.deleteHost(record.hostId)}> {this.myStatus(record)} </Popconfirm>
</div>)
}