Vue中使用Vue-scroll做表格使得在x轴滑动
页面效果
首先
npm i vuescroll
在main.js中挂载到全局
页面代码
<template><div class="app-container"><Header :title='title' @goback='goBack'><template v-slot:icon><van-icon @click='goHome' class='icon' name='wap-home-o' /></template></Header><div class="table_box"><vue-scroll :ops="ops" style="width:100%;height:100%"><div class="data-box"><van-row class="th-row" style="display:flex;"><van-col style="width:90px;text-align: center;border-right: 1px solid #ddd;">序号</van-col><van-col style="width:90px;text-align: center;border-right: 1px solid #ddd;">门店名称</van-col><van-col style="width:90px;text-align: center;border-right: 1px solid #ddd;">是否认购</van-col><van-col style="width:90px;text-align: center;border-right: 1px solid #ddd;">认购目标(分)</van-col><van-col style="width:90px;text-align: center;border-right: 1px solid #ddd;">本月完成(分)</van-col><van-col style="width:90px;text-align: center;border-right: 1px solid #ddd;">是否达时序</van-col><van-col style="width:90px;text-align: center;border-right: 1px solid #ddd;">当前进度</van-col><van-col style="width:90px;text-align: center;border-right: 1px solid #ddd;">是否需预警</van-col></van-row><!-- 数据循环展示,checkbox可以进行选择--><van-row class="td-row" :style="{ background: index % 2 == 0 ? '#fefefe' : '#f3f3f3' }"v-for="(item, index) in accountList" :key="index"><van-col class="common-ellipsis" @click="showContent(item.workerNo)">{{ item.workerNo }}</van-col><van-col class="common-ellipsis" @click="showContent(item.workerName)">{{ item.workerName }}</van-col><van-col class="common-ellipsis" @click="showContent(item.salary)">{{ item.salary }}</van-col><van-col class="common-ellipsis" @click="showContent(item.amount)">{{ item.amount }}</van-col><van-col class="common-ellipsis" @click="showContent(item.amountTime, 1)">{{ item.amountTime|dateFormat}}</van-col><van-col class="common-ellipsis" @click="showContent(item.remark)">{{ item.remark }}</van-col><van-col class="common-ellipsis" @click="showContent(item.remark)">{{ item.remark }}</van-col><van-col class="common-ellipsis" @click="showContent(item.remark)">{{ item.remark }}</van-col></van-row></div></vue-scroll></div><!-- 弹出省略的内容 --><van-popup v-model="showPopup" class="hidden-wrap"><van-row class="hidden-content">{{ ellContent }}</van-row></van-popup></div>
</template>
<script>
import Header from '../components/header'
export default {name: "vantTable",components: { Header },filters: {dateFormat: function (val) {//省略......return val;}},data() {return {title: "积分认购一览表",dataform: {queryStr: '',},isCheckAll: false,showPopup: false, // 显示省略的内容ellContent: "", // 省略的内容costName: "",checkedVal: [],accountList: [{ workerNo: "1", workerName: "张良", salary: "1000", amount: "50000", amountTime: "20021201", remark: "弄啥咧" },{ workerNo: "2", workerName: "天明", salary: "1111", amount: "40000", amountTime: "20021203", remark: "弄啥咧" },{ workerNo: "3", workerName: "少司命", salary: "1222", amount: "60000", amountTime: "20021001", remark: "弄啥咧" },{ workerNo: "4", workerName: "高渐", salary: "1333", amount: "20000", amountTime: "20021021", remark: "弄啥咧" },{ workerNo: "5", workerName: "雪女", salary: "1444", amount: "10000", amountTime: "20020801", remark: "弄啥咧" },],ops: {vuescroll: {},scrollPanel: {},rail: {keepShow: true},bar: {hoverStyle: true,onlyShowBarOnScroll: false, //是否只有滚动的时候才显示滚动条background: "#F5F5F5",//滚动条颜色opacity: 0.5,//滚动条透明度"overflow-y": "hidden" //使用横向滚动 竖向就是"overflow-x": "hidden"}}};},created() { },methods: {goBack() {this.$router.go(-1)},goHome() {this.$router.push('/index')},// 显示省略的内容showContent(content, type) {if (content == "") {return;} else {if (type == 1) {var format = this.$options.filters['dateFormat'];//日期通过过滤器格式化一下this.ellContent = format(content)} else {this.ellContent = content;}this.showPopup = true;}},checkAll() {if (!this.isCheckAll) {this.$refs.checkboxGroup.toggleAll(true);this.isCheckAll = true;} else {this.$refs.checkboxGroup.toggleAll();this.isCheckAll = false;}},onSearch() {},cLearSearch() {},checkChange() {},},
};
</script><style lang="less" scoped>
.app-container{background-color: #fff;height: 100vh;.table_box{padding: 10px;margin-top: 20px;.data-box {font-size: 13px;margin: 12px 0px;border: 1px solid #d0f2f0;.th-row {height: 30px;line-height: 30px;padding: 0px 12px;background: #d0f2f0;}.td-row {height: 30px;line-height: 30px;padding: 0px 12px;}}}
}// 超出 1 行显示省略号
.common-ellipsis {width: 90px;height: 100%;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;border-right: 1px solid #ddd;text-align: center;
}// 滚动条位置 --展示横向
/deep/.__bar-is-vertical {display: none !important;
}// 隐藏横向滚动条
/deep/.__bar-is-horizontal {bottom: -1px !important;
}
</style>
其中有个组件的代码header.vue
<template><div class="head_box"><header><div class="back"><img @click="goBack" src="../assets/back_on.png" alt="" /></div><div class="home_title_container"><h3 style="font-weight: normal;font-size: 20px;">{{title}}</h3></div><div class="home_func"><slot name="icon"></slot></div></header></div>
</template>
<script>
export default {name: 'org',props:{title:{}},data() {return {}},methods: {goBack() {this.$emit('goback')},},
}
</script>
<style lang="less" scoped>
.head_box{height: 2rem;
}
header {z-index: 999;color: red;text-align: center;height: 3rem;background: url('../assets/bg1.png');width: 100%;background-size: 100% 100%; // 可以使用coverbackground-repeat: no-repeat;background-origin: border-box; //从border开始填充background-clip: border-box;display: flex;justify-content: center;position: fixed;top: 0;.back {padding-left: 15px;img {align-self: center;display: flex;flex-direction: column;justify-content: center;height: 1.5rem;}width: 20%;height: 100%;text-align: left;flex: 1;display: flex;flex-direction: column;justify-content: center;}.home_func {display: flex;justify-content: center;flex: 1;width: 30%;height: 100%;font-size: 1.6rem;line-height: 1.5rem;color: #fff;.icon {display: flex;justify-content: center;flex-direction: column;text-align: center;}img{display: inline-block;width: 30px;height: 30px;align-self: center;}}.home_title_container {width: 70%;// height: 1.207729rem;display: flex;align-items: center;justify-content: center;flex-direction: column;font-size: 0.434783rem;line-height: 0.724638rem;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;color: #fff;h4 {font-size: 0.434783rem;line-height: 0.483092rem;height: 0.483092rem;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}}
}
</style>
注意
记得替换图片 !!!!
vant版本是2.x !!!
相关文章:

Vue中使用Vue-scroll做表格使得在x轴滑动
页面效果 首先 npm i vuescroll 在main.js中挂载到全局 页面代码 <template><div class"app-container"><Header :titletitle gobackgoBack><template v-slot:icon><van-icon clickgoHome classicon namewap-home-o /></templat…...

【高频】从输入URL到页面展示到底发生了什么?
一、相关衍生面试问题: 浏览器输入美团网站,从回车到浏览器展示经历了哪些过程 ? http输入网页之后的流程? 百度搜索页面,从点开搜索框,到显示搜索页面经历了什么? 二、探究各个过程&#x…...
【CSharp】ushort[]的IntPtr快速转换为ushort[]无符号短整型数组
【CSharp】ushort[]的IntPtr快速转换为ushort[]无符号短整型数组 1.背景2.代码1.背景 参考博客: 【CSharp】无符号短整型数组ushort[]转化为IntPtr https://blog.csdn.net/jn10010537/article/details/139278321?spm=1001.2014.3001.5501探测器/相机SDK获得是InPtr指针,它…...

释放 OSINT 的力量:在线调查综合指南
开源情报 (OSINT) 是从公开信息中提取有价值见解的艺术。无论您是网络安全专业人士、道德黑客还是情报分析师,OSINT 都能为您提供先进的技术,帮助您筛选海量的数字数据,发现隐藏的真相。 在本文中,我们将深入研究大量的OSINT 资源…...

22.Volatile原理
文章目录 Volatile原理1.Volatile语义中的内存屏障1.1.volatile写操作的内存屏障1.1.1.StoreStore 屏障1.1.2.StoreLoad 屏障 1.2.volatile读操作的内存屏障1.2.1.LoadStore屏障1.2.2.LoadLoad屏障 2.volatile不具备原子性2.1.原理 Volatile原理 1.Volatile语义中的内存屏障 在…...
Vue 3中的v-for指令使用详解
Vue 3中的v-for指令使用详解 一、前言1. 基本语法2. 循环渲染对象3. 在组件中使用v-for4.普通案例5. 其他用法 二、结语 一、前言 在Vue 3中,v-for指令是一个非常强大且常用的指令,它用于在模板中循环渲染数组或对象的内容。本文将为您详细介绍Vue 3中v…...
GB-T 43694-2024 网络安全技术 证书应用综合服务接口规范
编写背景 随着网络技术的发展和信息化进程的加速,网络安全问题日益凸显。为了加强网络安全管理,提升网络服务的安全性和可靠性,GB-T 43694-2024《网络安全技术 证书应用综合服务接口规范》应运而生。这份文件是 网络安全领域的标准之一&…...
AI大模型:掌握未知,开启未来
AI大模型的工作原理 AI大模型是指通过大量数据和复杂算法训练出的能够理解和生成自然语言文本的人工智能模型。它们背后的核心技术主要包括深度学习、神经网络和自然语言处理。以下是详细的工作原理以及通俗易懂的类比: 1. 数据收集和预处理 AI大模型的训练首先需…...

【C语言习题】26.字符逆序
文章目录 1.描述2.解题思路3.具体代码 1.描述 输入描述: 将一个字符串str的内容颠倒过来,并输出。可以有空格 数据范围:1≤𝑙𝑒𝑛(𝑠𝑡𝑟)≤10000 1≤len(str)≤10000 输出描述&…...
windows和linux下的库文件比较
在Windows和Linux操作系统中,库文件(lib、dll、.a、.so)都扮演着重要的角色,但它们之间存在一些关键的区别。以下是这些库文件之间的主要差异: Windows lib 静态链接库(Static Link Library)…...
第七十九节 Java面向对象设计 - Java访问级别
Java面向对象设计 - Java访问级别 类简单名称是 class 关键字和 {)之间的名称。 当我们通过简单的名称引用一个类时,编译器在引用类所在的同一个包中查找该类声明。 我们可以使用全名来引用一个类如下。 com.w3cschool.Dog aDog;指定类的访问级别的一般语法是 &…...

Vue进阶之Vue项目实战(四)
Vue项目实战 出码功能知识介绍渲染器性能调优使用 vue devtools 进行分析使用“渲染”进行分析判断打包构建的产物是否符合预期安装插件使用位置使用过程使用lighthouse分析页面加载情况使用performance分析页面加载情况应用自动化部署与发布CI/CD常见的CI/CD服务出码功能 出码…...
fix leakage脚本
芯片的PPA追求是无止境的,因而在修时序的过程中我们需要对设计修复leakage,降低芯片的静态功耗。 以下分享一个典型的leakage脚本 set design 1 set version "V1" set date [exec date %m%d%H%M] set working_directory ${design}_${version}…...

MySQL中视图是什么,有什么作用
目录 一、视图的简介 1.1 什么是视图? 1.2 为什么使用视图? 1.3 视图有哪些规则与限制? 1.4 视图能否更新? 二、视图的创建 三、视图的作用 3.1 用视图简化复杂的联结 3.2 用视图格式化检索出的数据 3.3 用视图过滤数据…...
【面试题】JavaScript基础高频面试(下)
10、Javascript 闭包是什么,闭包形成的原因和闭包的用途 ? 闭包(Closure)是 JavaScript 中的一个非常重要的概念。简单地说,闭包就是一个函数能够访问另一个函数的作用域。这是因为在 JavaScript 中,函数是一等公民&a…...
对于个人而言,大数据时代如何更好地管理自己的信息?
在大数据时代,管理个人信息变得尤为重要。以下是几个建议来更好地管理个人信息: 认识和了解自己的数字足迹:了解自己在互联网上的活动,包括浏览历史、社交媒体和在线购物数据等。通过查阅自己的帐户设置和隐私选项,可以…...
oj项目后端分析
1.菜单管理 我们菜单管理有菜单表(sys_menu),还有用户角色表(sys_role),菜单表是用于管理我们用户所拥有的权限,不同的用户所看到的页面是不一样的,由于一些用户他能够看到题库管理和考题管理,还…...

书籍学习|基于SprinBoot+vue的书籍学习平台(源码+数据库+文档)
书籍学习平台 目录 基于SprinBootvue的书籍学习平台 一、前言 二、系统设计 三、系统功能设计 1平台功能模块 2后台功能模块 5.2.1管理员功能模块 5.2.2用户功能模块 5.2.3作者功能模块 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 …...
AI学习指南数学工具篇-MATLAB中的凸优化工具
AI学习指南数学工具篇-MATLAB中的凸优化工具 在人工智能领域,凸优化是一个非常重要的数学工具,它在机器学习、深度学习、数据分析等领域都有着广泛的应用。而MATLAB作为一款强大的数学工具软件,提供了丰富的凸优化工具和函数,为用…...

散户如何参与期权交易?
期权就是股票,唯一区别标的物上证指数,会看大盘吧,期权交易两个方向认购做多,认沽做空,双向t0交易没了,期权交易跟期货一样,对的,玩的也是合约,唯一区别没有保证金不会爆…...
Linux链表操作全解析
Linux C语言链表深度解析与实战技巧 一、链表基础概念与内核链表优势1.1 为什么使用链表?1.2 Linux 内核链表与用户态链表的区别 二、内核链表结构与宏解析常用宏/函数 三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势5.1 插入效率5.2 安全…...

CTF show Web 红包题第六弹
提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框,很难让人不联想到SQL注入,但提示都说了不是SQL注入,所以就不往这方面想了 先查看一下网页源码,发现一段JavaScript代码,有一个关键类ctfs…...

智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql
智慧工地管理云平台系统,智慧工地全套源码,java版智慧工地源码,支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求,提供“平台网络终端”的整体解决方案,提供劳务管理、视频管理、智能监测、绿色施工、安全管…...

CentOS下的分布式内存计算Spark环境部署
一、Spark 核心架构与应用场景 1.1 分布式计算引擎的核心优势 Spark 是基于内存的分布式计算框架,相比 MapReduce 具有以下核心优势: 内存计算:数据可常驻内存,迭代计算性能提升 10-100 倍(文档段落:3-79…...

定时器任务——若依源码分析
分析util包下面的工具类schedule utils: ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类,封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz,先构建任务的 JobD…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用
1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...

学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2
每日一言 今天的每一份坚持,都是在为未来积攒底气。 案例:OLED显示一个A 这边观察到一个点,怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 : 如果代码里信号切换太快(比如 SDA 刚变,SCL 立刻变&#…...
稳定币的深度剖析与展望
一、引言 在当今数字化浪潮席卷全球的时代,加密货币作为一种新兴的金融现象,正以前所未有的速度改变着我们对传统货币和金融体系的认知。然而,加密货币市场的高度波动性却成为了其广泛应用和普及的一大障碍。在这样的背景下,稳定…...

GruntJS-前端自动化任务运行器从入门到实战
Grunt 完全指南:从入门到实战 一、Grunt 是什么? Grunt是一个基于 Node.js 的前端自动化任务运行器,主要用于自动化执行项目开发中重复性高的任务,例如文件压缩、代码编译、语法检查、单元测试、文件合并等。通过配置简洁的任务…...
纯 Java 项目(非 SpringBoot)集成 Mybatis-Plus 和 Mybatis-Plus-Join
纯 Java 项目(非 SpringBoot)集成 Mybatis-Plus 和 Mybatis-Plus-Join 1、依赖1.1、依赖版本1.2、pom.xml 2、代码2.1、SqlSession 构造器2.2、MybatisPlus代码生成器2.3、获取 config.yml 配置2.3.1、config.yml2.3.2、项目配置类 2.4、ftl 模板2.4.1、…...