[关闭]
@2890594972 2017-12-01T16:25:59.000000Z 字数 1518 阅读 3714

Element UI Table

element-ui


Table 表格

用于展示多条结构类似的数据,可对数据进行排序、筛选、对比或其他自定义操作。

基础表格

代码

image_1c07qveq4rsmre911ru466vir9.png-25.7kB

  1. <template>
  2. <el-table
  3. :data="tableData"
  4. style="width: 100%">
  5. <el-table-column
  6. prop="date"
  7. label="日期"
  8. width="180">
  9. </el-table-column>
  10. <el-table-column
  11. prop="name"
  12. label="姓名"
  13. width="180">
  14. </el-table-column>
  15. <el-table-column
  16. prop="address"
  17. label="地址">
  18. </el-table-column>
  19. </el-table>
  20. </template>

当el-table元素中注入data对象数组后,在el-table-column中用prop属性来对应对象中的键名即可填入数据,用label属性来定义表格的列名。可以使用width属性来定义列宽。

image_1c07tmngd1i9bre611jcq4qucl9g.png-82.7kB

image_1c07u78argdi1u9p17u1ndk1gp49t.png-44.2kB

实现效果
image_1c0826rd6hfpeidbimv7udf3an.png-27kB

带斑马纹表格

使用带斑马纹的表格,可以更容易区分出不同行的数据。

image_1c07r41fumrudrjnkm1dtl11ua13.png-27.1kB

带边框表格

image_1c07r5oqg19v315763841m5e1u651g.png-23.8kB

带状态表格

可将表格内容 highlight 显示,方便区分「成功、信息、警告、危险」等内容。

image_1c07r87gl696orf6ktu6h5p01t.png-26.6kB

固定表头

纵向内容过多时,可选择固定表头。

image_1c07r994480gmgp1mvt4vd16ir2a.png-31.6kB

固定列

横向内容过多时,可选择固定列。

image_1c07raeg011m21u7b18jqs761mfl2n.png-31.2kB

注意: 固定列需要使用fixed属性,它接受 Boolean 值或者leftright,表示左边固定还是右边固定。

固定列和表头

横纵内容过多时,可选择固定列和表头。

image_1c07re0cb14k915a141u5tjquf34.png-28.1kB

流体高度

当数据量动态变化时,可以为 Table 设置一个最大高度。

image_1c07rf6vtkjhmldmo4j5911gl3h.png-27.6kB

多级表头

数据结构比较复杂的时候,可使用多级表头来展现数据的层次关系。

image_1c07rh9g24esktm1g8uhfa10gq3u.png-47.7kB

单选

选择单行数据时使用色块表示

image_1c07rj3j917im25lpql1raorla4b.png-27.9kB

多选

选择多行数据时使用 Checkbox

image_1c07rl1g09u01cpt1f94159l1jme4o.png-43.5kB

排序

对表格进行排序,可快速查找或对比数据

image_1c07rme031dfasflrdv1hup16et55.png-25kB

筛选

对表格进行筛选,可快速查找到自己想看的数据

image_1c07rnrq3uba14ah1vl29041lu55i.png-29.1kB

自定义列模板

自定义列的显示内容,可组合其他组件使用

image_1c07rou6bcnc18gp1k9d18ir98j5v.png-27kB

 展开行

当行内容过多并且不想显示横向滚动条时,可以使用 Table 展开行功能

image_1c07rs6t8tdu30g1bq4c7n1h2q6c.png-48.1kB

表尾合计行

若表格展示的是各类数字,可以在表尾显示各列的合计

image_1c07rvt6s14a0mf01hm11vdvfo6p.png-35.9kB

合并行或列

多行或多列共用一个数据时,可以合并行或列

image_1c07s4a7v19u2163h155l13dm1k8s8m.png-35.8kB

自定义索引

自定义 type=index 列的行号

image_1c07s5up823kraq16nusd61aj693.png-24.5kB

Table Attributes

Table Events

Table Methods

Table Slot

Table-column Attributes

后记

v2.5 中已经不建议使用 scope 属性了,推荐使用 slot-scope 属性来设置上下文。将代码中的 scope="scope" 修改为 slot-scope="scope"

  1. 3scope 作用域
  2. 在父级中,具有特殊属性 scope <template> 元素必须存在,表示它是作用域插槽的模板。scope 的值对应一个临时变量名,此变量接收从子组件中传递的 props 对象:
  3. <div class="parent">
  4. <child>
  5. <template scope="props">
  6. <span>hello from parent</span>
  7. <span>{{ props.text }}</span>
  8. </template>
  9. </child>
  10. </div>
  1. 1ref :为子组件指定一个索引 ID,给元素或者组件注册引用信息。refs是一个对象,包含所有的ref组件。
  2. <div id="parent">
  3.   <user-profile ref="profile"></user-profile>(子组件)
  4. </div>
  5. var parent = new Vue({ el: ‘#parent })
  6. // 访问子组件
  7. var child = parent.$refs.profile
  8. ps$表示refsvue对象,而不是普通的js对象。
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注