react design pro 实现多条件进行查询数据

                                                          react design pro 实现多条件进行查询数据

一、描述:

        对于后台管理系统,在编写业务界面,多条件进行联合查询数据是最基础的业务需求,一般多条件查询都是传入相应字段的ID或者其它值。

二、实现的界面效果:

        

三、实现思路:

        先定义一个对象,用于接收每选择一个下拉框都进行相应的ID保存,然后最后把对象附加到接口请求参数上即可。

        例如:我这里的查询接口需要的数据格式

        { merchantId: "", page: 1, limit: 15, departDate: "", lineId: "", driverId: "", carId: "" }      

四、代码实现:

        1.先在state里定义一个对象:

      2.设置下拉框点击事件onChange

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是一个使用 React 和 Ant Design Pro 实现轮播表格中的数据表头 columns 不变的示例代码。 首先,我们需要引入 `Carousel` 和 `Table` 组件以及相应的样式文件。 ```tsx import { Carousel, Table } from 'antd'; import 'antd/dist/antd.css'; import styles from './index.less'; ``` 接着,我们定义一个函数组件 `CarouselTable`,它接收 `data` 和 `columns` 两个参数。 ```tsx interface Props { data: any[]; columns: any[]; } const CarouselTable: React.FC<Props> = ({ data, columns }) => { // TODO: 实现轮播表格逻辑 return ( <div className={styles.carouselTable}> {/* TODO: 渲染轮播表格 */} </div> ); }; ``` 接下来,我们在 `CarouselTable` 组件中实现轮播表格的逻辑。我们使用 `Carousel` 组件来实现轮播效果,并在每个轮播项中渲染一个 `Table` 组件来显示表格数据。 ```tsx const CarouselTable: React.FC<Props> = ({ data, columns }) => { const pageSize = 5; // 每页显示的数据条数 const pageCount = Math.ceil(data.length / pageSize); // 总页数 const tableData = Array.from({ length: pageCount }, (_, i) => data.slice(i * pageSize, (i + 1) * pageSize) ); // 将数据分页 return ( <div className={styles.carouselTable}> <Carousel dots={false} autoplay> {tableData.map((pageData, i) => ( <div key={i}> <Table dataSource={pageData} columns={columns} pagination={false} /> </div> ))} </Carousel> </div> ); }; ``` 在这段代码中,我们首先计算出总页数和每页显示的数据条数,然后将数据分页。接着,我们使用 `Carousel` 组件来渲染轮播项,每个轮播项中渲染一个 `Table` 组件来显示分页后的数据。注意,我们将 `pagination` 属性设置为 `false`,以避免在每个表格中显示分页条。 最后,我们导出 `CarouselTable` 组件。 ```tsx export default CarouselTable; ``` 完整代码示例: ```tsx import { Carousel, Table } from 'antd'; import 'antd/dist/antd.css'; import styles from './index.less'; interface Props { data: any[]; columns: any[]; } const CarouselTable: React.FC<Props> = ({ data, columns }) => { const pageSize = 5; // 每页显示的数据条数 const pageCount = Math.ceil(data.length / pageSize); // 总页数 const tableData = Array.from({ length: pageCount }, (_, i) => data.slice(i * pageSize, (i + 1) * pageSize) ); // 将数据分页 return ( <div className={styles.carouselTable}> <Carousel dots={false} autoplay> {tableData.map((pageData, i) => ( <div key={i}> <Table dataSource={pageData} columns={columns} pagination={false} /> </div> ))} </Carousel> </div> ); }; export default CarouselTable; ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值