vue element-ui动态横向统计表格的实现

目录
  • element-ui动态横向统计表格
  • 关于element-ui表格问题
    • 表格图片显示问题
    • 表格中多出一条线

element-ui动态横向统计表格

表格结构

<el-table
      :data="AllData"
      style="width: 100%">
      <el-table-column
        prop="title"
        label="统计">
      </el-table-column>
      <el-table-column
        v-for="(item,index) in allList"
        :prop="item.key"
        :key="index"
        :label="item.feeName">
      </el-table-column>
      <el-table-column
        prop="join"
        label="合计">
      </el-table-column>
    </el-table>

data

AllData:[],
allList:[],

methods:

setData(){
        //这里请求后台的统计信息,合计可以在我这里进行运算
        var getData = [
          {
            title:'未入账',
            data:[
              {
                feeName:'考试费1',
                num:2001,
              },
              {
                feeName:'考试费2',
                num:2002,
              },
              {
                feeName:'考试费3',
                num:2003,
              },
              {
                feeName:'考试费4',
                num:2004,
              }
            ]
          }
        ]
        for (var i in getData){
          var a = {}
          var b = []
          a['title'] = getData[i].title
          var x = 0
          var join = 0
          getData[i].data.forEach(function (e){
            x+=1
            join+=e.num
            b.push({feeName:e.feeName,key:'num'+x})
            a['num'+x] =  e.num
            a['join'] = join
          })
          this.AllData.push(a)
          this.allList = b
        }
      },

请求到 getData这个json之后就组建新的对象

created(){
      this.setData()
    },

最后上效果图…

附:

如果增加下面图中json对象的对应数据,表格可以横轴纵轴增加数据

关于element-ui表格问题

表格图片显示问题

问题:

表格中是用户信息,有用户头像,用户头像图片没显示,当两个用户头像地址一样,前一页还显示,下一页就没有了

环境:

  • elementUI2.10.1组件el-table el-avatar
  • vue2.6.10

解决:

原因1:el-avatar组件内有一个isImageExist,默认情况下图片请求失败会把它设置为false,一旦设置为false,就不会再变成true,此时修改图片为正确地址也不会渲染图片。

原因2:el-table表格更新,默认是会只更新变化部分,尽量减少dom操作。

因此一旦有图片请求失败,就很有可能导致原来有头像的用户显示不出来,解决办法是给el-table增加属性row-key=“id”,这样表格就会更新所有行的dom。

表格中多出一条线

问题:

表格中设置了最后一列固定右侧,当缩放浏览器让表格产生横向滚动条,然后缩放到表格没有横向滚动条,此时多出一条线

环境:

  • elementUI2.10.1组件el-table
  • vue2.6.10

解决:

el-table中.el-table__fixed元素产生的线,当表格出现横向滚动条时,.el-table__fixed元素的高度会减去滚动条的宽度gutterWidth,但是缩放到不显示滚动条时.el-table__fixed元素高度并不会再加上gutterWidth,这样导致表格多出一条线。

所以问题就是要覆盖掉元素错误的高度样式,为了避免影响过多,可以在选择器上面加一些其他限制,下面的不做限制。

.el-table__fixed-right{
    height: 100% !important;
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Element实现动态表格的示例代码

    目录 [代码背景] [代码实现] #1# -> 代码复用的基础是你需要一个可复用的组件 #2# -> 在展示页面使用动态表格组件 #3# -> 如何给动态表格根据需求动态添加序号列/索引列 [代码背景] 有这样一个业务需求场景,有大概十几张表归属于某个类别,用户希望在同一个页面,通过选择不同的查询指标展示不同的表格,这些表的表头样式类似但是又不完全相同,怎么做呢? 到目前为止所有基于Element UI的表格样式都是直接在页面写死的,像官方这样: <el-table :data=&

  • vue基础之ElementUI表格详解

    目录 ElementUI 表格 示例:一个基本的表格 el-table的属性 el-table-column的属性 多级表头 获取表格,重点说下!!! 单选 多选 排序 筛选 自定义列 展开行 总结 ElementUI 表格 前置工作: 安装好vue和elemetUI.如果是按需引入,请确保Table.TableColumn模块已经引入 示例:一个基本的表格 <template> <el-table :data="tableData" stripe="tru

  • 详解Vue+Element的动态表单,动态表格(后端发送配置,前端动态生成)

    动态表单生成 ElementUI官网引导 Element表单生成 Element动态增减表单,在线代码 关键配置 template中,form和form-item的写法和绑定 data里的值为空 methods中,向后台获取数据的函数写法  1. form,form-item,input的写法[^code] <el-form :model="dynamicValidateForm" label-width="120px" ref="dynamicVa

  • vue+element创建动态的form表单.以及动态生成表格的行和列

    动态创建form表单,网上有插件 (form-create) 不过我不知道它怎么用,没有使用成功,如果你使用成功了,欢迎下方留言. 最后我使用了笨方法,针对各个表单写好通用的组件,然后根据type用v-if来渲染对应的表单,数据,事件什么的都可以动态的传进去,比较好用 复制代码  1 <el-form size="mini" class="lj-form lj-form-s1">  2             <div v-for="(i

  • vue element-ui动态横向统计表格的实现

    目录 element-ui动态横向统计表格 关于element-ui表格问题 表格图片显示问题 表格中多出一条线 element-ui动态横向统计表格 表格结构 <el-table :data="AllData" style="width: 100%"> <el-table-column prop="title" label="统计"> </el-table-column> <el-t

  • Vue+Element UI+Lumen实现通用表格分页功能

    前言 最近在做一个前后端分离的项目,前端使用 Vue+ Element UI,而后端则使用 Lumen 做接口开发,其中分页是必不可少的一部分,本文就介绍如何基于以上环境做一个简单.可复用的分页功能. 先说后端 后端做的事情不多,只需要接受几个参数,根据参数来获取数据即可. 需要获取的参数如下: pageSize(一页数据的数量) pageIndex(第几页的数据) 然后就可以根据这两个参数计算出偏移量,再从数据库中取出相应的数据. 假如现在给出的参数为:pageSize=10,pageInde

  • VUE+Element UI实现简单的表格行内编辑效果的示例的代码

    原理是通过Css控制绑定的输入控件与显示值,在选中行样式下对控件进行隐藏或显示 效果示例地址 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <!-- 引入样式 --> <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-default/index.c

  • 使用vue+element ui实现走马灯切换预览表格数据

    目录 1. 需求分析 2. 效果演示 3. 代码实现 3.1 table.json 3.2 HTML 代码 3.3 Script 代码 总结 1. 需求分析 有这样一个 json 文件(table.json),里面包含有多组需要展示的表格数据,需求就是需要将这些数据进行展示,并且能快速查看不同的数据,由于数据过多,不能一个表格一个表格的进行展示,所以找了一个比较合适的方法,就是通过走马灯将所有数据进行渲染,当切换走马灯时,再展示对应的数据. 2. 效果演示 3. 代码实现 3.1 table.j

  • Vue+Element ui 根据后台返回数据设置动态表头操作

    由于后端是多人开发,也没有规范数据格式,所有页面是我一个人开发,所以就会遇到同样的页面不同的返回数据格式问题. 一.根据element文档,利用prop属性绑定对应值,label绑定表头. html <el-table class="tb-edit" highlight-current-row :data="tableData" border style="width: 100%"> <template v-for="

  • vue+element创建动态的form表单及动态生成表格的行和列

    动态创建form表单,网上有插件 (form-create) 不过我不知道它怎么用,没有使用成功,如果你使用成功了,欢迎下方留言. 最后我使用了笨方法,针对各个表单写好通用的组件,然后根据type用v-if来渲染对应的表单,数据,事件什么的都可以动态的传进去,比较好用 <el-form size="mini" class="lj-form lj-form-s1"> <div v-for="(item,i) in table.custome

  • vue+element UI实现树形表格

    本文实例为大家分享了vue+element UI实现树形表格的具体代码,供大家参考,具体内容如下 一.在component文件夹下新建如下treeTable文件夹,里面有2个文件: eval.js:将数据转换成树形数据 /** * @Author: jianglei * @Date: 2017-10-12 12:06:49 */ 'use strict' import Vue from 'vue' export default function treeToArray(data, expandA

  • Vue Element UI自定义描述列表组件

    本文实例为大家分享了Vue Element UI自定义描述列表组件的具体代码,供大家参考,具体内容如下 效果图 写在前面 写后台管理经常从列表点击查看详情,展示数据信息,Element UI虽然有表格组件,但是描述组件并没有,之前团队的成员遇到这种情况都自己去写样式,写起来也麻烦,而且每个人写出来的样式也不统一,破坏了项目的整体风格. 像是Ant Design UI就有描述组件,用起来特别舒服,所以索性自己结合Element UI的el-row和el-col自己写了一个. 实现哪些功能 1.每行

  • Vue+Element UI实现概要小弹窗的全过程

    场景:一个巡检单据有n个巡检明细,一个巡检明细有n个巡检项目. 实现效果:当鼠标移到明细行的概要图标时显示当前行的巡检项目卡片弹窗,移出弹窗时关闭弹窗 巡检单据详情 鼠标移到项目概要图标 效果实现 data里面声明的变量 // 概要弹窗 outlineDialog: false, // 当前行标准概要 standSummary: [], // 概要弹窗位置控制 outlineCard: { pageY: null, pageX: null, display: "none" } 1.弹窗

  • Vue+Element UI 树形控件整合下拉功能菜单(tree + dropdown +input)

    这篇博客主要介绍树形控件的两个小小的功能: 下拉菜单 输入过滤框 以CSS样式为主,也会涉及到Vue组件和element组件的使用. 对于没有层级的数据,我们可以使用表格或卡片来展示.要展示或建立层级关系,就一定会用到树形组件了. 使用Vue + Element UI,构建出最基本的树如下图所示: 现在我们就要在这个基础上进行改造,使页面更加符合我们的交互场景. 下拉菜单 将下拉菜单嵌到树节点中,使操作更加简便.紧凑. 效果演示 效果如图: 图示1:悬浮在树节点状态 图示2:点击三个点图标状态

随机推荐