element Table表格列属性绑定关系分析

图片好像显示不出来,原文链接:
http://blog.mtils.com/posts/element-Table%E8%A1%A8%E6%A0%BC%E5%88%97%E5%B1%9E%E6%80%A7%E7%BB%91%E5%AE%9A%E5%85%B3%E7%B3%BB%E5%88%86%E6%9E%90/

最近有个需求,老板叫采集一个管理后台的表单内容到excel,原系统没有设计导出功能。于是只能爬接口了。

爬接口很简单,F12打开浏览器调试面板,点击查询,就可以看到请求表格的内容,但是响应值那么多数据,如何知道UI界面上的列和属性的映射关系呢?

这里说个简单可用的方法,针对于VUE2可用。

第一步,找到对应table渲染根元素。一般根元素大概特征如下:

  1. div标签
  2. 有一个data-v属性
  3. class 包含
<div data-v-4c7dc3fa="" class="el-table el-table--fit el-table--striped el-table--border el-table--enable-row-hover el-table--enable-row-transition el-table--medium" style="height: 100%;">

大概布局就像下图了:
外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

接下来,通过xpath访问这个table实例(修改class为实际的,然后再console执行):

a = $x("//div[@class='el-table el-table--fit el-table--striped el-table--border el-table--enable-row-hover el-table--enable-row-transition el-table--medium']")[0].__vue__

这里把table实例抓出来赋予了a, 可以自己看a对象的结构去拿数据。

在实例中遍历所有colum列,并打印结果:

a.$children.forEach(item => {console.log(item._props.label, item._props.prop)})

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

这样就可以拿到所有列和属性的绑定关系了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值