产品需求:在正常表格下方进行一系列汇总(如:合计等),分析之后发现需要拼接一个或多个横向排列的表格。
实现步骤:
模板部分:

		<el-table :data="DataBefore">
			<!--此处为正常纵向表格,直接将横向表格拼接在下方-->
		</el-table>
<!-- 合计 -->
          <section>
            <el-table
              :show-header="false"
              :data="tableDataBll"
              border
              style="width: 100%;"
            >
              <el-table-column prop="total" align="center" />
              <el-table-column prop="totalOrder" />
              <el-table-column prop="totalArea" />
              <el-table-column prop="sendAmount" />
              <el-table-column prop="totalAmount" />
            </el-table>
          </section>
          <!-- 制表人 -->
          <section>
            <el-table
              :show-header="false"
              :data="tableDataB"
              border
              style="width: 100%"
            >
              <!-- :span-method="objectSpanMethod"
              :cell-style="columnStyle" -->
              <el-table-column prop="name1" align="center" />
              <el-table-column prop="amount1" />
              <el-table-column prop="name2" align="center" />
              <el-table-column prop="amount2" />
            </el-table>
          </section>

data中定义:

data() {
    return {
    	DataBefore: [],
    	oldRecord: {}
	}
}

computed中定义:

computed: {
    tableDataB() {
      return [
        { name1: '制单人', amount1: this.oldRecord.makePeople, name2: '审单人', amount2: this.oldRecord.checkPeople }
      ]
    },
    tableDataBll() {
      return [
        { total: '合计', totalOrder: '发货数量:' + ' ' + this.oldRecord.shipmentNumber, totalArea: '发货面积:' + ' ' + this.oldRecord.shipmentArea, sendAmount: '发货金额:' + ' ' + this.oldRecord.shipmentAmount, totalAmount: '总金额:' + ' ' + this.oldRecord.allAmount }
      ]
    }
 }

created中调用接口获取数据后进行处理:

created() {
    console.log(`接到的值---`, this.$route.query.typeName)
    const params = { id: this.$route.query.id }
    operate.getBasicsDetails(params).then(res => {
      console.log(`修改前的值---`, JSON.parse(res.oldRecord))
      //console.log(`修改后的值---`, JSON.parse(res.newRecord))

      const oldData = JSON.parse(res.oldRecord) //这里接口返回的json字符串特殊处理为json格式
      //const newData = JSON.parse(res.newRecord)

      //this.form1 = { ...oldData }
      this.oldRecord = oldData //横向表格数据
      this.DataBefore = oldData.list //正常表格的数据

      //this.form2 = { ...newData }
      //this.newRecord = newData
      //this.DataAfter = newData.list
    })
  }

来看效果图:
在这里插入图片描述

GitHub 加速计划 / eleme / element
15
2
下载
A Vue.js 2.0 UI Toolkit for Web
最近提交(Master分支:2 个月前 )
c345bb45 1 年前
a07f3a59 * Update transition.md * Update table.md * Update transition.md * Update table.md * Update transition.md * Update table.md * Update table.md * Update transition.md * Update popover.md 1 年前
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐