tableConfigFun.ts 987 B

1234567891011121314151617181920212223242526272829
  1. /**以table表来配置展示字段配置
  2. * @param label 配置表名称
  3. * @param tableColumns TableColumns
  4. * @param sort 非必传 [id,name] 名称按数组顺序排序
  5. * */
  6. function TableConfigFun(params:{label:string,tableColumns:()=>any,sort?:string[]}){
  7. let {label,tableColumns,sort=[]} = params
  8. let list: any[] =[{
  9. label,
  10. }]
  11. if(typeof tableColumns === 'function'){
  12. let data: any[]= []
  13. if(sort.length > 0){
  14. tableColumns()?.forEach((item: any,index:number)=>{
  15. let eq = sort.findIndex(d=>d===item.dataIndex) +1
  16. data[index] = { title: item.title, dataIndex: item.dataIndex, label, default:eq}
  17. })
  18. }else{
  19. tableColumns()?.forEach((item: any,index:number)=>{
  20. let eq = index +1
  21. data[index] = { title: item.title, dataIndex: item.dataIndex, label, default:eq}
  22. })
  23. }
  24. list[0]['data'] = data
  25. }
  26. return list
  27. }
  28. export default TableConfigFun