vue分页功能[通俗易懂]

vue分页功能[通俗易懂]分页分页、查询、重置、修改、删除分页、查询、重置、修改、删除vue中的分页使用频繁,在此记录一下。因为分页一般和增删查改等一起使用,所以写了一套。若是没有使用到其他功能,可以直接删除,只使用分页功能。pagination:{total:0,current:1,pageSize:10,//每页中显示10条数据pageSizeOptions:[“10″,”20″,”30”],//每页中显示的数据

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

分页、查询、重置、修改、删除

vue中的分页使用频繁,在此记录一下。因为分页一般和增删查改等一起使用,所以写了一套。若是没有使用到其他功能,可以直接删除,只使用分页功能。

   pagination: { 
   
        total: 0,
        current: 1,
        pageSize: 10, //每页中显示10条数据
        pageSizeOptions: ["10", "20", "30"], // 每页中显示的数据
        showTotal: (total) => `共有${ 
     total}条数据`, //分页中显示总的数据
        showSizeChanger: true, // 显示页面条数改变
        showQuickJumper: true, // 显示快速跳转
      },
  queryParam: { 
   
        //查询参数
        page: 1, //第几页
        size: 10, //每页中显示数据的条数
        hosName: "",
        hosCode: "",
        province: "",
        city: "",
      },
// ---------- 分页函数 -------------
    handleTableChange(pagination) { 
   
      this.pagination.current = pagination.current;
      this.pagination.pageSize = pagination.pageSize;
      this.queryParam.page = pagination.current;
      this.queryParam.size = pagination.pageSize;

      this.Search();
    }, 
// 1. 获取列表函数,该函数的作用是获取页面上显示的表格
 // 获取列表设置默认参数:分页为 1 的参数
    getList(queryPath = "?pageNo=1") { 
   
      this.dataSource = []; // 重置 table 的 dataSource 数据
      BZGLHttp.getFangfa(queryPath).then((res) => { 
   
        // console.log("res列表:::", res);
        // 设置分页
        const pagination = { 
    ...this.pagination };
        pagination.total = res.result.total;
        pagination.pageSize = res.result.size;
        this.pagination = pagination;
        // 渲染数据,把接收的数据渲染到table中
        
        for (let i = 0; i < res.result.records.length; i++) { 
   
          let data = { 
   
            key: (res.result.current - 1) * res.result.size + i + 1,
            day: res.result.records[i].day,
            id: res.result.records[i].id,
            remark: res.result.records[i].remark,
            storageQuantity: res.result.records[i].storageQuantity,
            transferOutQuantity: res.result.records[i].transferOutQuantity,
            lossQuantity: res.result.records[i].lossQuantity,
            lossRate: res.result.records[i].lossRate,
            source: res.result.records[i].source,
            source_dictText: res.result.records[i].source_dictText,
            grade: res.result.records[i].grade,
            grade_dictText: res.result.records[i].grade_dictText,
            operation: res.result.records[i].operation,
            operation_dictText: res.result.records[i].operation_dictText,
            otherTrainerId: res.result.records[i].otherTrainerId,
            otherTrainerId_dictText:
              res.result.records[i].otherTrainerId_dictText,
          };
          this.dataSource.push(data);
        }
      });
    },
        
 // 2. 获取查询条件 函数,该函数会返回当前的查询条件, 搜索栏查询条件 + 分页的页码
    getQueryPath() { 
   
      let queryPath =
        "?pageNo=" +
        this.queryParam.page +
        "&day=" +
        this.startTime +
        "&day=" +
        this.endTime +
        "&operation=" +
        this.form.operation;
      return queryPath; // 返回的查询条件
    },
 // 3. 重置当前页码及页码参数
    resetPagination() { 
   
      this.pagination = { 
   
        total: 0,
        current: 1,
        pageSize: 10, //每页中显示10条数据
        showSizeChanger: true,
        pageSizeOptions: ["10"], //每页中显示的数据
        showTotal: (total) => `共有${ 
     total}条数据`, //分页中显示总的数据
      };
      //查询参数
      this.queryParam = { 
   
        page: 1, //第几页
        size: 10, //每页中显示数据的条数
        hosName: "",
        hosCode: "",
        province: "",
        city: "",
      };
    },
  // 4、查询按钮触发函数——单独写,目的是在页码不为1时,点击查询,页码自动归1
    getsearch1() { 
   
      this.resetPagination(); //重置页码和参数
      //重置按钮触发函数
      // this.resetForm();
      // 获取目前选择好的查询条件
      let queryPath = this.getQueryPath();
      this.getList(queryPath);
      // this.resetPagination(); // 查询完后 需要重置页码和参数
    },
 // 5. 供分页调用的查询函数
    Search() { 
   
      // 获取目前选择好的查询条件
      let queryPath = this.getQueryPath();
      // console.log("当前的查询路径为:::",queryPath);
      this.getList(queryPath);
      //this.resetPagination(); // 查询完后 需要重置页码和参数
    },
 // 6. 重置按钮触发函数
    resetForm() { 
   
      // 重置查询表单,动态刷新列表
      this.form = { 
   
        day: null, //日期
        operation: "", //操作单选按钮
      };
      this.resetPagination(); //需要重置页码和参数
      // 重新调用获取列表函数,默认参数获取列表
      this.getList();
    }, 
  // 7. 修改提交
    handleOk() { 
   
      // console.log("要更新的数据::::::", this.updateForm);
      BZGLHttp.updateJianGenPaiShiInfo(this.updateForm).then((res) => { 
   
        console.log(res);
        if (res.code == 200) { 
   
          this.$message.success("修改成功");
        }
      });
      // 获取当前的查询路径重新进行查询,刷新列表
      let queryPath = this.getQueryPath();
      this.getList(queryPath);
      this.updatevisible = false;
    },
  // 8. 删除按钮 
    workdelete(Id) { 
   
      // console.log("要删除的该记录的id:::",Id);
      BZGLHttp.deleteJianGenPaiShiInfo("?id=" + Id).then((res) => { 
   
        if (res.code == 200) { 
   
          this.$message.success("删除成功");
          this.dataSource = [];
          let queryPath = this.getQueryPath();
          this.getList(queryPath);
        }
      });
    }, 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/187006.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • break和continue的区别

    break和continue的区别1.break用break语句可以使流程跳出switch语句体,也可以用break语句在循环结构终止本层循环体,从而提前结束本层循环。使用说明:(1)只能在循环体内和switch语句体内使用break;(2)当break出现在循环体中的switch语句体内时,起作用只是跳出该switch语句体,并不能终止循环体的执行。若想强行终止循环体的执行,可以在循环体中,但并不在switch语…

    2022年6月14日
    62
  • 如何在Java中将String转换为int

    如何在Java中将String转换为int在本教程中 我们将看到将 Java 中的 String 转换为 int 或 Integer 的各种方法 您可以使用以下任何一种方式 使用 Integer parseInt string 使用 Integer valueof string 使用 ApacheCommon toInt string 使用 ApacheCommon

    2025年8月2日
    6
  • C语言输出所有的水仙花数

    C语言输出所有的水仙花数输出所有的“水仙花数”。所谓“水仙花数”是指一个3位数,其各位数字立方之和等于该数本身。例如,153是一个水仙花数,因为153=1³+5³+3³解题思路:水仙花数的解题思路是把给出的某个三位数的个位、十位、百位分别拆分,并求其立方和。程序能正常运行并准确输出“水仙花数”。定义i为水仙花数,运用for循环for(❶i=100;❷i<=999;❸i++)先执行❶,再执行❷判断条件是否满足,满足执行下列花括号,最后执行❸,一次循环结束;再执行❷判断条件是否满足,满足执行下列花括号,最后

    2022年7月24日
    8
  • Linux系统CUDA10.2+CUDNN安装教程

    Linux系统CUDA10.2+CUDNN安装教程Ubuntu18.04下安装CUDA10.2及对应的CUDNN的教程。

    2022年6月12日
    72
  • 阿里云服务器开放端口如何设置_阿里云服务器8888端口

    阿里云服务器开放端口如何设置_阿里云服务器8888端口阿里云服务器开放端口阿里云服务器默认是只开放了部分端口,我们部署自己的服务需要监听一下80,8080等端口时,就需要自己设置安全策略,本文介绍如何设置阿里云的安全组,开放需要的端口步骤点击阿里云的的控制台点击进入云服务器点击进入安全组菜单,点击创建安全组按钮,添加一个新的安全组2.进入创建新安全组页面填写一下必要的信息,然后配置访问规则,包括入站和出站,点击手动添加一条,设置开放所有的端口,包括端口和授权对象,点击创建安全组按钮,将创建一条新的安全组出站我们也可以配置,默

    2022年10月3日
    3
  • Python面试必备的7大问题

    本文给大家总结了Python面试必备的7大问题。例如:交换变量值、is 和 == 的区别、可变对象和不可变对象、连接字符串用join还是+、__new__和__init__的区别,等等。

    2022年1月18日
    93

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号