element-ui中table渲染的快速用法

element-ui中对table数据的渲染有一些模板式的操作,基本按照模板渲染数据即可
基本模板样式如下

              <el-table
                :data="studentData.rows"
                style="width: 100%"
                stripe
                :header-cell-style="{background:'#e1e4eb'}"
              >

                <el-table-column prop="studentName" label="姓名" align="center" >
                  <template slot-scope="scope">
                    <span> {{ scope.row.studentName | filterIsAttr }}</span>
                  </template>
                </el-table-column>
                <el-table-column prop="sex"  label="性别" align="center" >
                  <template slot-scope="scope">
                    <span v-if="scope.row.sex==1"> 男</span>
                      <span v-if="scope.row.sex==0">女</span>
                  </template>
                </el-table-column>

                <el-table-column prop="idCard" label="身份证" align="center" >
                  <template slot-scope="scope">
                    <span v-if="scope.row.idCard===0" style="color:red;">未采集</span>
                      <span v-if="scope.row.idCard===1">已采集</span>
                  </template>
                </el-table-column>
                <el-table-column  label="操作" width="200px" align="center" >
                  <template slot-scope="scope">
                      <el-button class="color_blue" plain  type="text" @click="showEdit(scope.row.id)"
                      >编辑</el-button>
                    <el-button class="color_yellow" plain @click="delStudent(scope.row.id)"
                      >删除</el-button
                    >
                  </template>
                </el-table-column>
              </el-table>
            </div>
            <!-- 分页 -->
            <div class="pagination-container" v-if="studentData.total>0">
              <el-pagination
                background
                @size-change="handleSizeChange"
                @current-change="handleCurrentChange"
                :current-page="studentData.pageNumber"
                :page-sizes="[10, 20, 30, 40, 50]"
                :page-size="studentData.pageSize"
                layout="total, sizes, prev, pager, next"
                :total="studentData.total"
              >
              </el-pagination>

            </div>
             <div v-if="studentData.total===0" style="text-align:center;margin-top:100px;">
                  <img src="../../assets/images/数据为空的.jpg" alt="">
              </div>
methods(){
    // 处理分页
    handleSizeChange(val) {
        console.log('处理分页')
        this.sizeChange(this.studentData, val)
        this.getStudentList()
    },
    // 当前页
    handleCurrentChange(val) {
        console.log('处理当前页')
        this.studentData.pageNumber = val
        this.getStudentList()
    },
//数据渲染部分
    getStudentList() {
      this.loading = true
      if (this.isIE()) this.studentData.total = -1
      studentList(
      后端定义要传的字段
        this.studentData.pageNumber,
        this.studentData.pageSize
      )
        .then(res => {
               //数据渲染
          console.log('所有的学生数据', res)
          this.loading = false
          this.studentData.rows = res.data
          this.studentData.total = res.dataTotal
          this.tableTotalReplace(this.studentData.total)
        })
        .catch(error => {
          this.loading = false
        })
    },
},
 mounted() {
    // 页面加载时候进行学生列表渲染
    this.getStudentList()
  }

原文地址:https://www.cnblogs.com/smart-girl/p/12048205.html

时间: 2024-08-30 15:13:51

element-ui中table渲染的快速用法的相关文章

关于element 框架中table表格选中并切换下一页之前选中数据消失的问题

问题描述: 在实际项目中使用element框架的table表格时,发现当前页选中了数据,点击切换下一页时,再选中数据,发现上一页选中的数据消失了.(目的是:要把用户选择的所有数据显示到页面上) 代码如下: <!-- html 代码 --> <table :data="tableData" @selection-change="handleSelectionChange" ref="multipleTable" :row-key=

Element UI 中被隐藏的滚动条

Element UI 官网中有用到自定义的滚动条组件,但是发布的所有版本中都不曾提及,个中原因我们不得而知,不过我们还是可以拿过来引用到自己的项目中. 使用的时候,放在 <el-scrollbar></el-scrollbar> 标签内即可如: <div style="height:100%"> <el-scrollbar class="m-scroll" style="height:100%">

Element ui 中使用table组件实现分页记忆选中

我们再用vue和element-ui,或者其他的表格的时候,可能需要能记忆翻页勾选,那么实现以下几个方法就ok了 首先定义个data值 data () { return { multipleSelectionAll: [], // 所有选中的数据包含跨页数据 idKey: 'personId' // 标识列表数据中每一行的唯一键的名称(需要按自己的数据改一下) } } 方法中定义以下: methods : { // 设置选中的方法 setSelectRow() { if (!this.multi

UI中 frame 与 transform的用法与总结

在iOS中,我们是不可以直接访问控件中frame的结构体的成员的,因此我们需要分三步来改变一个UI控件的位置,大小 一.frame用法 frame的结构体类型为: struct CGRect { CGPoint origin; CGSize size; }; 定义中间变量接收,然后赋值    //得到button控件的frame赋值为自定义变量 CGRect frame= self.btnImage.frame;    //修改结构体变量   frame.origin.y-=10;    //重

Vue中table表头合并的用法

<div class="panel-container"> <div> <table class="table-head" width="80%"> <thead> <tr> <th class="headerTable" rowspan="2">名称</th> <th rowspan="2">

element ui 中的时间选择器,禁用今天以前的时间

<el-date-picker v-model="baseInfo.addTime" type="datetime" placeholder="选择时间" :picker-options="pickerOptions"></el-date-picker> pickerOptions: { disabledDate(time) { return time.getTime() < Date.now()

Element ui 中的表格数据格式转换

原文地址:https://www.cnblogs.com/cwzqianduan/p/8663140.html

vue + element ui 阻止表单输入框回车刷新页面

问题 在 vue+element ui 中只有一个输入框(el-input)的情况下,回车会提交表单. 解决方案 在 el-form 上加上 @submit.native.prevent 这个则会阻止表单回车提交. 测试 下面的代码出现表单回车提交 <body> <div id="app"> <el-form ref="form" :model="form" label-width="80px"&

如何在vue项目中引入element ui组件

(1)安装element ui,即: npm i element-ui -S 然后在项目中的node_modules目录下查看是否有element-ui文件夹,如果有说明安装成功了: (2)引入element ui 在main.js中引入element ui,即: 1 import ElementUI from 'element-ui' 2 import 'element-ui/lib/theme-chalk/index.css' 3 Vue.use(ElementUI) [注意红色部分,以前是