Ant Design Pro学习记录—ProTable的使用(二)

目录

一、列表检索初始值设置

二、字段缩略显示


一、列表检索初始值设置

使用initialValue属性,配置列表检索的初始值

const columns: ProColumns<API.RoomItem>[] = [
    {
      title: '名称',
      dataIndex: 'name',
    },
    {
      title: '状态',
      dataIndex: 'status',
      valueEnum: {
        1: {
          text: '空置中',
          color: 'red',
        },
        2: {
          text: '招租中',
          color: 'yellow',
        },
        3: {
          text: '已租赁',
          color: 'green',
        },
      },
      initialValue: 1,
    },
  ];

根据业务需要,从其他页面跳转到当前列表页面,默认检索对应状态的数据,首先获取状态的参数值,然后赋值给initialValue,就可以实现传不同状态参数进来,显示对应状态的数据

使用useLocation获取参数

const location = useLocation();
const params = location.search.split('=');
const queryStatus = params[1];

赋值

const columns: ProColumns<API.RoomItem>[] = [
    {
      title: '名称',
      dataIndex: 'name',
    },
    {
      title: '状态',
      dataIndex: 'status',
      valueEnum: {
        1: {
          text: '空置中',
          color: 'red',
        },
        2: {
          text: '招租中',
          color: 'yellow',
        },
        3: {
          text: '已租赁',
          color: 'green',
        },
      },
      initialValue: queryStatus,
    },
  ];

二、字段缩略显示

列表显示时,有些内容特别长,导致列表变形,仅设置width还不能达到想要的效果,可以使用ellipsis:true属性实现,同时需要设置对应的宽度width,超过长度的自动显示省略号,原文内容会以气泡形式展示。

const columns: ProColumns<API.RoomItem>[] = [
    {
      title: '房源名称',
      dataIndex: 'name',
      width: 200,
      ellipsis: true,
    },

效果如下

效果是很不错,可惜不符合客户需求,客户不想让显示气泡...,最后费了好大劲也没找到只缩略而不显示气泡的方法,最终只能不使用ellipsis:true配置,自己动手改接口,按照宽度截取能显示的文字配上省略号显示,这样既实现了缩略,又不显示气泡。如果谁知道怎样配置可以隐藏气泡可以评论告诉我。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在 Next.js 中集成 ProTable 插件,需要安装 ProTableantd 依赖。 ``` npm install antd npm install @ant-design/pro-table ``` 接下来,你需要在 pages 目录下创建一个页面,并在页面中导入 ProTableantd 样式。 ```jsx // pages/index.js import React from 'react'; import { Table } from 'antd'; import ProTable from '@ant-design/pro-table'; import 'antd/dist/antd.css'; import '@ant-design/pro-table/dist/table.css'; const columns = [ { title: 'Name', dataIndex: 'name', key: 'name', }, { title: 'Age', dataIndex: 'age', key: 'age', }, { title: 'Address', dataIndex: 'address', key: 'address', }, ]; const data = [ { key: '1', name: 'John Brown', age: 32, address: 'New York No. 1 Lake Park', }, { key: '2', name: 'Jim Green', age: 42, address: 'London No. 1 Lake Park', }, { key: '3', name: 'Joe Black', age: 32, address: 'Sidney No. 1 Lake Park', }, ]; const IndexPage = () => { return ( <div> <h1>ProTable Example</h1> <ProTable columns={columns} dataSource={data} search={false} pagination={{ showQuickJumper: true, pageSize: 20, }} /> </div> ); }; export default IndexPage; ``` 在上面的代码中,我们创建了一个简单的表格,其中使用ProTableantd 的样式。我们将表格的列和数据传递给 ProTable 组件,并设置了一些其他选项,例如分页和搜索。 最后,我们将 IndexPage 导出为默认页面组件,以便 Next.js 可以正确呈现该页面。 现在,你可以启动 Next.js 应用程序并访问该页面,即可看到 ProTable 的效果。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值