请问:antd表格中,第三列是根据第二列减第一列生成的,这种需求可以实现吗?

做项目遇到一个需求,c列是根据b列减去a列生成的,a列是后台返回得到的数据,b列是需要在render中input自行输入的数据,请问各位大佬这种需求可以实现吗?如果可以,是怎么实现呢?我尝试使用了onChange但没能实现,在此跪求各位大佬帮忙解答,多谢!image.png

阅读 2.9k
4 个回答
columns.map(column => {
    if(column.dataIndex === 'c'){
        column.render = (text, record) => record.a - record.b; 
    }
    return column;
})

或者

const COLUMN = [
    {dataIndex: 'a', title: 'xxx'},
    {dataIndex: 'b', title: 'xxx'},
    {
        dataIndex: 'c', 
        title: 'xxx', 
        render: (text, record) => record.a - record.b
    }
];

冒昧的问一句a列是什么?数据?列表?方便贴一个a列的json看一下吗?

通常情况这个和ant.d没有关系吧,input on change 改变数据(你的业务逻辑),触发渲染,ant.d table 只是参与渲染。就算第三列值不想缓存,那么第二列值还是要改变并且重新渲染的。感觉你提问的问题好像是想绕过dispatch 和 render。

数据整合对了就可以

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题