react+antd表格实现多列复选框和单选框
业务要求,可以这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导.
实现效果图
为了快速为大家解决问题,直接上代码:
这种写法对数据格式有严格要求,可以让后台把顺序给你排好,这个数据是表格的title:let list = [ {name:'经营'}, {name:'智能'}, {name:'云计'}, {name:'电子商务'}, {name:'物流'}, {name:'运维'}, {name:'其他'} ]
这个是对应类型下的列表:let data = [ [{name:'应用'},{name:'相关应用'},{name:'计算'},{name:'电商'},{name:'物流'},{name:'平台'},{name:'咨询'},], [{name:'管理'},{name:'生产'},{name:'智能'},{name:'电商应用'},{name:'储运'},{name:'业务服务'},{name:'工程监理'},], [{name:'预算'},{name:'指挥'},{name:'设施'},{name:'零售业务'},{name:null},{name:'维保'},{name:'园区'},], [{name:'金融'},{name:'资源'},{name:'安全'},{name:'支付'}], [{name:'科研'},{name:'安全'},{name:'智能'}], [{name:'工程'},{name:'环保'},], [{name:'综合'},{name:'模拟'},], [{name:'共享'},{name:'流程'},], [{name:'风控'},{name:'控制'},], [{name:'主数据'},{name:'研究院'},], [{name:'分析'},{name:'交付'},], [{name:'移动'},{name:'合规'},], ]
用ES6循环添加antd表格的columns:
columnslist.map((item,key)=>{ data_list.push({ title:item.name, key:key,//不写这个antd会报错,也可以为Table规定其它取行值 render:(text)=>{//在这里可以输出一下text,是个数组,判断它为真的时候才return,否则返回空 return text[key] && text[key].name?<Checkbox values={text[key].name} ID={text[key].id} onChange={this.onChange} >{text[key].name}</Checkbox>:"" } }) })
保存在state中:this.setState({ columns:data_list, dataSource:data })
这是我写的Table,我这里不需要分页,要是需要分页的也是会翻页,
Table:<Table columns={columns} dataSource={dataSource} pagination={false} />
在多选框中的onChange中返回选中的数据,得到选中的数据onChange=(e)=>{ console.log(e) }
你学会了吗?
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)