欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 幼教 > h5兼容table ,如何实现h5在app内使用h5渲染table表格而且实现横屏预览?

h5兼容table ,如何实现h5在app内使用h5渲染table表格而且实现横屏预览?

2024/10/24 9:23:27 来源:https://blog.csdn.net/qq_37030315/article/details/140072465  浏览:    关键词:h5兼容table ,如何实现h5在app内使用h5渲染table表格而且实现横屏预览?

压图地址

在这里插入图片描述

横屏div 通过css 实现

transform: rotate(90deg);
transformOrigin: '50vw 50vw' ;
height: 100vw;
width: '100vh';
<divclass="popup-box":style="{transform: originSet === 0 ? 'rotate(90deg)' : '',transformOrigin: originSet === 0 ? '50vw 50vw' : '',height: originSet === 0 ? '100vw' : '100vh',width: originSet === 0 ? '100vh' : '100vw',}">
</div>

表格通过 ant-design-vue的 <a-table></a-table> 实现

<a-table:columns="propList":data-source="list":scroll="{ x: 10000, y: tableY }"@change="handlePageChange":pagination="{current: current,total: totals,defaultPageSize: pagesize,pageSize: pagesize,}"><template #headerCell="{ column }"><span class="title1">{{ column.title }}</span></template></a-table>

完整源码:

<template><divclass="popup-box":style="{transform: originSet === 0 ? 'rotate(90deg)' : '',transformOrigin: originSet === 0 ? '50vw 50vw' : '',height: originSet === 0 ? '100vw' : '100vh',width: originSet === 0 ? '100vh' : '100vw',}"><div class="bottom-fiexd" ref="fixedDiv"></div>  <div><a-table:columns="propList":data-source="list":scroll="{ x: 12500, y: tableY }"@change="handlePageChange":pagination="{current: current,total: totals,defaultPageSize: pagesize,pageSize: pagesize,}"><template #headerCell="{ column }"><span class="title1">{{ column.title }}</span></template></a-table></div></div>
</template>
<script setup lang="js">
import { Table } from 'ant-design-vue'
import { onMounted, ref } from 'vue';
import { useRoute, useRouter } from 'vue-router';
import dataSouce from './t.js'
import columen from './head.js'// 控制横屏竖屏
const originSet = ref(0)
const route = useRoute();
const router = useRouter();
const fixTop = ref();
const fixedDiv = ref();const propList = ref([]);
const list = ref([]);const totals = ref('100');const filterActive = ref('');
// const filterList = ref([]);
// 审批任务ID
const taskId = ref('');const a = () => {if (columen.data && columen.data.length) {propList.value = columen.data.map((item, index) => {item = {title: item.a,width: 100,dataIndex: id,key: item.key,fixed: index === 0 ? 'left' : undefined,};return item;});}};// 统计数据
const totalInfo = ref({});
const currentPage = ref(1);
const pagesize = ref(3);
const searchVal = ref('');const b= () => {if (dataSouce.data.list && dataSouce.data.list.length) {list.value = dataSouce.data.list;}
};// 页码变化
const PageChange = ({ current, defaultPageSize, pageSize, total}) => {currentPage.value = current;pagesize.value = pageSize;b();
};const tableY = ref(190);onMounted(() => {taskId.value = route.query.id;filterActive.value = route.query.filterActive;a();b();const fixTopsH = fixTop.value.offsetHeight;const fixedDivH = fixedDiv.value.offsetTop;tableY.value = fixedDivH - fixTopsH - 100;
});
</script>[压图地址](https://yatu.di6gan.cn/#/single)

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com