【AntDesignPro】Ant Design Pro学习记录—ProTable的使用(一)
目录
前言
因为项目需要,确定了Ant Design Pro框架来开发后台管理端,刚接触这套框架,而且配套的资料真的很少,只能基于官方demo和网上不完整的学习经验一次次尝试,终于有个像样的结果,记录一下研究学习的成果,也给需要的同学一些帮助。
本次学习研究基于Ant Design Pro V5版本,其它版本没有研究,开发工具VsCode。
一、关于ProTable
刚接触,概念性的东西不是很了解,或许以后补充吧,有需要的可自行查找。
至于为什么要用protable,因为官网给的demo就是protable,照葫芦画瓢,做着快,是否有其它的table,还没有了解。
二、使用步骤
1.新建页面
简单操作,直接将demo示例的TableList复制一份,修改文件夹的名字,配置好路由,页面就能出来了,这时候页面还是官网demo页面。
2.修改接口
需要服务端配合提供对应的接口,接口代理这里不在记录。
下面是TableList引入的原接口
然后查看具体的接口API,api在接口文件src\services\ant-design-pro\api.ts文件
(查看快捷方式ctrl + 鼠标左键,大部分内容都是靠自己查看各个属性然后一次次尝试出来的)
复制列表接口,把名称、接口连接、返回参数改成自己的,返回参数参考API.RuleList,同样复制一份,改成自己的名字,返回参数定义有两块,一个时RuleList,另一个时RuleListItem,都复制改成自己的,我这里改成CategoryList 和CategoryListItem
下面是我自己的接口
最后返回新建的页面,把写好的API引入
3.接口调用
对于新手来说,追踪接口的调用和实现真的麻烦,这里直接在原列表做修改就行
先把页面中API.RuleList和API.RuleListItem,全部替换成自己的
把原来的接口rule换成自己新写的接口名称
到这一步,只要接口本身没问题,数据是可以正常请求到的
4.数据显示和检索
修改demo定义的columns列表数据,对应自己的接口返回参数即可,如果要做国际化,可学习demo在双src\locales\文件夹下各语言pages.ts中配置自己的内容,使用方式和demo给出的一样
如果不需要配置国际化,可直接写title内容
1)不同类型内容显示
不同类型字段的显示问题,可配置valueType,可通过查看valueType属性,配置自己需要的值,比如
显示图片,就配置valueType:'image',
显示进度条 valueType:'progress'
百分比 valueType:'percent'
金额 valueType:'money'
日期 valueType:'date',会格式化为年月日显示,对应检索条件也是只选择年月日
或时间valueType:'dateTime',会格式化为年月日时分秒显示,对应检索条件是时间选择框
时间范围valueType:'dateRange',对应检索条件时时间范围选择框
2)列表检索
protable配置完成后,内容都默认是检索的,会自动生成检索框。
如果不需要检索,可配置hideInsearch:true,当然检索字段需要服务端接口支持对应的检索才行。
不同的类型对应的检索条件也不同,默认是文本检索,遍历值对应的下拉框检索,会列出可选值,时间类型对应时间选择控件。
对于显示单个时间,而需要使用时间范围检索的情况,可参考
使用render设置列表显示的值,使用search设置检索提交的值
3)列表内容样式设置
使用fieldProps,可配置列表内容样式,比如设置了valueType:'image',然后在使用fieldProps设置图片显示的宽高,如下
5.其它
1)render的简单使用
TableList例子中有个render方法,目前没有深入研究,只是参考着用,参数record记录了这行的值,比如在我不知道valueType可配置image属性的时候,我要显示图片怎么办,就做了如下操作,自己写一个图片,效果如上图,这里一定要配置key,否则虽然页面能出来,但是会报错(新手易犯错)
2)图片点击预览
列3自定义预览图片,需要引入Image,参考官网示例
3)翻页
这个需要接口支持,参考TableList,参数定义API.RuleList的时候,服务端接口返回数据加上total就可以了
总结
ProTable在持续学习研究中,会不断更新,欢迎大家留言共同讨论学习
猜你喜欢
- 【AntDesignPro】使用高德地图设置考勤区域
- 参考高德开放平台https://lbs.amap.com/api/javascript-api-v2/guide/abc/amap-react功能要求:使用AntDesignPro开发系统管理端,考勤模块需要设置APP考勤打卡区域,需要页面显示地图定位并设置考勤范围(地图上画圈),以便APP在画圈范围内打卡使用。1、 准备2、 下载react类组件代码参考官网流程,可正常加载出地图组件,下面是我的页面和组件文件组件文件3、 安装并引入AmAP Loadernpm i @ama
- 【AntDesignPro】Ant Design Pro学习记录—ModalForm的使用(一)
- 目录前言一、ModalForm销毁二、ModalForm编辑赋值三、ProFormUploadButton赋值四、其它总结前言使用了AntDesignPro,仿照TableList创建了自己的列表,列表添加编辑确成了困扰,添加编辑使用了ModalForm,有两个问题,一个使用后,页面数据无法清除,再点弹框还是原来的数据,第二个编辑的时候,初始数据赋值问题。AntDesignPro版本V5,开发工具VsCode。一、ModalForm销毁参考ant design的关闭ModalForm和Modal
- 【AntDesignPro】Ant Design Pro学习记录—ModalForm的使用(四)
- 一、 ModalForm自定义footer按钮参考官网,Modal弹框是可以自定义按钮的,原想着ModalForm的modalprops可以设置自定义footer,结果设置一直不生效,最终还是使用Modal嵌套了ProForm实现了功能,在此记录一下。ant design pro使用的V5版本。1、Modal自定义footer参考官网https://ant-design.antgroup.com/components/modal-cn?from=msidevs.net#components-mo
- 【React】使用React实现一个内容滑动组件
- 最近在做项目时遇到一个需求,需要让一个列表能够通过点击按钮进行滚动,每次都是一屏的距离,不足则结束。并且,这个列表项是在react-grid-layout中的某一个模块内。所以包裹这个列表的容器会随时发生变化。在完成这个组件后,通过这篇文章总结一下。UI/原型分析那么从上面的功能描述以及项目中的UI,我们可以分析得到这样一个假想图:我们需要实现一个容器来作为我们的可视区域,并且这个容器是可以伸缩的。列表内容如果超出容器的可视区域,那么就会被隐藏。需要左右都有按钮,来支持用户左右滑动内容来查看,每
- 【AntDesignPro】Ant Design Pro学习记录—ModalForm的使用(三)
- 一、 Form.useForm()的使用之前使用表单的时候,一直在为表单赋值纠结,找了一些资料,也感觉很复杂,使用多了之后,感觉表单赋值也挺简单的。1、 创建一个formconst [theForm] = Form.useForm();2、 绑定表单组件无论是ProForm、ModalForm、还是DrawerForm,都可以绑定我们的theForm,使用属性form={theForm}绑定,代码如下<ProForm &nb
- 【AntDesignPro】Ant Design Pro学习记录—ProTable的使用(一)
- 目录一、关于ProTable二、使用步骤1.新建页面2.修改接口3.接口调用4.数据显示和检索1)不同类型内容显示2)列表检索3)列表内容样式设置5.其它1)render的简单使用2)图片点击预览3)翻页总结前言因为项目需要,确定了Ant Design Pro框架来开发后台管理端,刚接触这套框架,而且配套的资料真的很少,只能基于官方demo和网上不完整的学习经验一次次尝试,终于有个像样的结果,记录一下研究学习的成果,也给需要的同学一些帮助。本次学习研究基于Ant Design Pro V5版本,
- 【React】React中Typecript的使用
- 目录一、创建React的TypeScript项目二、使用差别1、基本使用2、Props传值的差别3、State传参三、总结一、创建React的TypeScript项目见:如何在React项目中引入TypeScript?_duansamve的博客-CSDN博客二、使用差别1、基本使用其基本使用和javascript编写React项目时差不多这是一份.tsx文件代码:可以看到和之前的.jsx使用并无太大差别import React, { Component }
- 【AntDesignPro】Ant Design Pro学习记录—前后端分离跨域设置,解决跨域session不一致
- 目录前言一、为什么跨域二、跨域配置三、跨域请求session不一致前言第一次做前后端分离,也是踩了很多坑,记录一下AntDesignPro跨域解决的方式。服务器系统使用Nginx,服务端使用thinkphp6。AntDesignPro正式build放到服务器上后,提示登录成功,但一直登录不上,后来发现是跨域session不同导致的,登录的时候session和登录成功后session的id不同,导致提示登录成功,就是登录不进去的情况。一、为什么跨域不想知道为什么要跨域,只想知道怎么解决。二、跨域配
- 【React】react面试题
- React面试题文章目录React面试题一、react特性***React与Vue的区别*******1. Jsx的使用规范*******1.说说对 React 的理解?有哪些特性?DOM2.说说 Real DOM 和 Virtual DOM 的区别?优缺点?*******说说React中的虚拟dom?在虚拟dom计算的时候diff和key之间有什么关系*******3.说说React Jsx转换成真实DOM过程?4.说说你第mvc和mvvm的理解5.说说react中引入css的方式有哪几种?区
- 【AntDesignPro】Ant Design Pro学习记录—DrawerForm的使用
- 在AntDesignPro中,ModalForm和DrawerForm是我最常用的两个表单组件,配置上,他们有很多相同的地方,也有差异的地方,相比较而言,DrawerForm我使用的更多。ModalForm<ModalForm title={标题} width={600} &n