PC分页操作以及loading效果

page-size 每页显示条目个数
current-page 当前页数
total 数据总数
current-change【currentPage 改变时会触发】
切换分页时会先加载,等在接口数据,接口返回,加载会关闭(在获取接口数据完毕哪里加上this.loading=false),前提是在数据哪里绑定 v-loading=“loading”
例如: <el-table :data="list" border style="width: 100%" v-loading="loading"></el-table>
如果想要中文版 element-ui,在main.js中设置。
// set ElementUI lang to EN
// Vue.use(ElementUI, { locale });
如果想要中文版 element-ui,按如下方式声明
Vue.use(ElementUI);

<el-row type="flex" style="height: 60px" align="middle" justify="end">
 <el-pagination
        background
        layout="prev, pager, next"
        align="right"
        style="padding: 10px"
        :page-size="pageParams.pagesize"
        :current-page="pageParams.page"
        :total="pageParams.total"
        @current-change="changePage"
      >
      </el-pagination>
 </el-row>
<script>
import { getRoleList } from "@/api/role.js";
export default {
  name: "Role",
  data() {
    return {
     loading: false,
      pageParams: {
        pagesize: 5, //每页多少条
        page: 1, //当前页码数
        total: 0,
      },
    };
  },
  created() {
    this.getRoleList();
  },
  methods: {
    async getRoleList() {
    //先解构了rows,再解构了total 
    //await getRoleList(this.pageParams); 把
      const { rows, total } = await getRoleList(this.pageParams);
      this.list = rows;
      this.pageParams.total = total;
    },
    //点击时触发,使页码变化
    changePage(newPage) {
    this.loading = true;
    //变化了页码,把最新的数据赋值给  this.pageParams.page 
      this.pageParams.page = newPage;
      //在页码发生变化之后,再发一次请求,更新数据
      this.getRoleList();
    },
  },
};
</script>

在这里插入图片描述
在这里插入图片描述

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值