当前位置: 首页 > news >正文

大团企业网站制作做一元云购网站

大团企业网站制作,做一元云购网站,学做点心的网站,wordpress官方文档下载为了实现上图效果,最开始打算用el-row、el-col去实现,但发现把表头和数据分成两大列时,数据太多时会导致所在格高度变高。但由于每一格数据肯定不一样,为保持高度样式一致,就需要我们手动去获取最高格的高度之后再设置…

为了实现上图效果,最开始打算用el-row、el-col去实现,但发现把表头和数据分成两大列时,数据太多时会导致所在格高度变高。但由于每一格数据肯定不一样,为保持高度样式一致,就需要我们手动去获取最高格的高度之后再设置给其他格,很麻烦..

改写el-table相对来说更简单。关键点:

1、设置:show-header="false"隐藏原本的表头;

2、将纵向表头当成数据,放在table的最前列;

3、如果有多级表头,就得通过设置:span-method="objectSpanMethod"去合并行或列;

4、处理后端返回的数据格式。

一、el-table大致框架:

<template><el-table :show-header="false" :span-method="objectSpanMethod" ref="readinessRef" class="tableBox" v-loading="loading" :data="getIValues" fit border style="width: 100%" :cell-style="{'background-color': '#fafafa', 'color': 'rgba(51, 66, 97, 0.6)', 'font-weight': '300'}"><el-table-column v-for="(item, index) in getIHeaders" :key="index" :prop="item" align="center" :width="[0,1].indexOf(index)!=-1 ? '150px':'300px'" :min-width="[0,1].indexOf(index)==-1 ? '300px':''"><template #default="scope"><div v-if="[0,1].indexOf(index)==-1 && scope.row.title == '能力图解'" class="perpareBox"><ul style="text-align: left;"><li v-for="(liItem,liIndex) in getResList(scope.row[item][scope.row.moldTitle])" :key="liIndex">{{liItem}}</li></ul></div><div v-if="index!=0 && scope.row.title == '人力资源准备度'" class="perpareBox"><div class="num">{{scope.row[item]}}</div><div v-if="parseFloat(scope.row[item])<0.5" class="circleRed"></div><div v-else-if="parseFloat(scope.row[item])>=0.8" class="circleGreen"></div><div v-else class="circleYellow"></div></div></template></el-table-column></el-table>
</template>

二、所需数据格式:

1、表头:

const iHeaders = ref([{prop: 'groupName',label: '工作群组'},{prop: 'duty',label: '能力图解'},{prop: 'xuqNum',label: '需求数量'},{prop: 'passNum',label: '合格数'},{prop: 'perpare',label: '人力资源准备度'}
])const getIHeaders = computed(() => {return readinessList.value.reduce((pre, cur, index) => pre.concat(`value${index}`), ['title', 'moldTitle'])
})

多级表头数据:

const moldData = ref([{"id": 2,"name": "知识技能"},{"id": 3,"name": "硬性条件"},{"id": 4,"name": "能力素质"},{"id": 104,"name": "组织贡献"}])

处理表头合并行:

const objectSpanMethod = ({ row, column, rowIndex, columnIndex }) => {let moldDataIndex = moldData.value.length// console.log('moldDataIndex', moldDataIndex)if (rowIndex < 1 || rowIndex > moldDataIndex) {if (columnIndex === 0) {return [1, 2] // 一、二列表头合并} else if (columnIndex === 1) {return [0, 0]}}if (columnIndex === 0) {if (rowIndex == 1) {return {rowspan: moldDataIndex, //二、三、四、五行表头合并colspan: 1}} else {return {rowspan: 0,colspan: 0}}}
}

2、处理后端返回数据:

后端返回格式:

const readinessList = ref([{"groupName": "测试222","xuqNum": 200,"passNum": 0,"perpare": "0.0%","duty": {"硬性条件": [],"知识技能": [{"name": "知识技能","responsibility": "法规政策"},{"name": "知识技能","responsibility": "日常办公软件操作"},{"name": "知识技能","responsibility": "客户关系与维护"}],"组织贡献": [],"能力素质": [{"name": "能力素质","responsibility": "办公软件1"},{"name": "能力素质","responsibility": "特别能吃苦"}]}}
])

处理数据的函数:

const getIValues = computed(() => {return handleData(readinessList.value)
})function handleData(data) {let list = []if (data.length != 0) {iHeaders.value.forEach(headers => {let obj = {}if (headers.label == '能力图解') {moldData.value.forEach(mold => { // 处理多级表头obj = data.reduce((pre, cur, index) => Object.assign(pre, { ['value' + index]: cur[headers.prop] }), { title: headers.label, moldTitle: mold.name })list.push(obj)})} else {obj = data.reduce((pre, cur, index) => Object.assign(pre, { ['value' + index]: cur[headers.prop] }), { title: headers.label })list.push(obj)}})return list} else {return []}
}

处理后的数据格式:

 

 

http://www.yayakq.cn/news/937928/

相关文章:

  • 网站自响应wordpress 数据 拆分
  • 网站开发中存在的问题抛丸机网站排名优化
  • 公司网站建设东莞衡水商城网站建设
  • 网站备案成功怎么查备案号网站开发使用软件环境
  • 南京城市规划建设展览馆网站商城网站后续费用
  • 怎样做网站温州互联网公司
  • python可以做网站么优秀设计作品网站
  • 机票网站建设方总1340812空间安装wordpress
  • 吉林教育网站建设方案什么网站权重快
  • 教育培训推广网站模板asp网站模板
  • 网站设计对网站建设有哪些意义?湛江cms建站系统
  • 福建做网站的公司钓鱼链接生成器
  • 学校网站资源库建设和资源上传网站正在建设中的图片素材
  • 响应式门户网站模板网站建设可以买东西
  • 繁昌网站建设定制软件公司
  • 聊城定制化网站建设重庆网红打卡地方有哪些景点
  • 中山网站建设方案白沟做网站
  • 学校网站建设的应用意义案例北京网页设计好的公司
  • 网站根据城市做二级目录算命小程序代理
  • 做企业网站价格如何设计小程序
  • 安徽外经建设集团网站北京品牌建设网站公司
  • 阿里云网站建设方案书是什么小制作小发明手工图片
  • 深圳好看的网站建设哪家公司好html做企业门户网站
  • 网站开发项目任务北京工程信息网官网
  • 郑州建设银行官网站精准数据营销
  • 网站建设项目实践金融街做网站的公司
  • 知乎 网站建设个人作品展示网站
  • 响应式个人网站psd德清县建设银行官方网站
  • 汽车销售服务东莞网站建设备份管理wordpress
  • 如何添加网站logo毕节网站建设兼职