# 表格loading


table loading效果
工厂
物料分类
物料编码
物料名称
规格
功率
物料属性
基本单位
单重
改余
改损
数据来源
最后更新日期
最后更新人
东日新能源
电极
555
一烧0227
500
RP
自产
500
0
0
自增
2023-02-22
史炜立
东日新能源
电极
02.21
0222压型
500
UHP
自产
55
0
0
自增
2023-02-22
史炜立
东日新能源
原料
01.04.01.0009
横墙砖
H3
0
0
0
erp
2023-02-22
史炜立
东日新能源
电极
LONG02
四浸UHP1-288*1888-出口
LONG29*14
RP
自产
2.61
0
0
自增
2022-11-23
韦宏波
东日新能源
电极
LONG01
二浸UHP2-288*1980-进口
LOG120*320
RP
自产
1.6
0
0
自增
2022-11-23
韦宏波
东日新能源
电极
TJJ01
加加工01阿
sss
RP
自产
1.32
0
0
自增
2022-09-20
韦宏波
东日新能源
电极
TNC01
内串01
100
RP
自产
1.3
0
0
自增
2022-09-20
韦宏波
东日新能源
电极
YX11112
压型11112
slaaa
RP
自产
1.6
0
0
自增
2022-09-08
韦宏波
东日新能源
电极
YX11111
压型1111
ks2a
RP
自产
1.5
0
0
自增
2022-09-08
韦宏波
东日新能源
原料
01.04.01.0010
横墙砖
H4
0
0
0
erp
2022-08-26
史炜立
共 20 条
  • 1
  • 2
前往

努力加载中...

t-table标签中添加tableLoading,loading文字设置loadingText即可

<template>
  <t-layout-page>
    <t-layout-page-item>
      <t-table
        title="table loading效果"
        :table="table"
        :columns="table.columns"
        @selection-change="selectionChange"
        :tableLoading="tableLoading"
        loadingTxt="努力加载中..."
        :row-key="getRowKey"
        isShowPagination
        @page-change="pageChange"
      >
        <template #toolbar>
          <el-button size="default" type="primary" @click="refresh"
            >刷新</el-button
          >
        </template>
      </t-table>
    </t-layout-page-item>
  </t-layout-page>
</template>

<script>
import data from "./data.json";
import data1 from "./data1.json";
export default {
  data() {
    return {
      tableLoading: false,
      table: {
        total: 0,
        currentPage: 1,
        pageSize: 10,
        firstColumn: { type: "selection", isPaging: true },
        data: [],
        columns: [
          { prop: "factoryModelIdLabel", label: "工厂", minWidth: "180" },
          { prop: "materialTypeLabel", label: "物料分类", minWidth: "80" },
          { prop: "materialCode", label: "物料编码", minWidth: "100" },
          { prop: "materialName", label: "物料名称", minWidth: "220" },
          { prop: "materialSpecs", label: "规格", minWidth: "80" },
          { prop: "power", label: "功率", minWidth: "80" },
          { prop: "materialPropertyLabel", label: "物料属性", minWidth: "80" },
          { prop: "baseUnit", label: "基本单位", minWidth: "80" },
          { prop: "singleWeight", label: "单重", minWidth: "80" },
          { prop: "shortRuleMore", label: "改余", minWidth: "80" },
          { prop: "shortRuleLess", label: "改损", minWidth: "80" },
          { prop: "materialSourceLabel", label: "数据来源", minWidth: "100" },
          { prop: "updateTime", label: "最后更新日期", minWidth: "180" },
          { prop: "updateBy", label: "最后更新人", minWidth: "100" },
        ],
      },
    };
  },
  created() {
    this.getList(1);
  },
  methods: {
    // 翻页选中的唯一值
    getRowKey(row) {
      return row.id;
    },
    // 刷新
    refresh() {
      this.table.currentPage = 1;
      this.getList(1);
    },
    // 获取当前的页码
    pageChange(val) {
      console.log("获取当前的页码", val);
      this.table.currentPage = val;
      this.getList(this.table.currentPage);
    },
    async getList(pageNum) {
      this.tableLoading = true;
      let res;
      if (pageNum === 1) {
        res = await data;
      } else {
        res = await data1;
      }
      if (res.success) {
        // console.log('获取品名下拉数据', res.data)
        this.table.data = res.data.records;
        this.table.total = res.data.total;
        setTimeout(() => {
          this.tableLoading = false;
        }, 3000);
      }
    },
    // 复选框选中
    selectionChange(val) {
      const chosenIds = val.map((item) => item.id);
      console.log("翻页选中的所有值", chosenIds);
    },
  },
};
</script>
显示代码