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

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到页面展示到底发生了什么?

一、相关衍生面试问题&#xff1a; 浏览器输入美团网站&#xff0c;从回车到浏览器展示经历了哪些过程 &#xff1f; http输入网页之后的流程&#xff1f; 百度搜索页面&#xff0c;从点开搜索框&#xff0c;到显示搜索页面经历了什么&#xff1f; 二、探究各个过程&#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) 是从公开信息中提取有价值见解的艺术。无论您是网络安全专业人士、道德黑客还是情报分析师&#xff0c;OSINT 都能为您提供先进的技术&#xff0c;帮助您筛选海量的数字数据&#xff0c;发现隐藏的真相。 在本文中&#xff0c;我们将深入研究大量的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中&#xff0c;v-for指令是一个非常强大且常用的指令&#xff0c;它用于在模板中循环渲染数组或对象的内容。本文将为您详细介绍Vue 3中v…...

GB-T 43694-2024 网络安全技术 证书应用综合服务接口规范

编写背景 随着网络技术的发展和信息化进程的加速&#xff0c;网络安全问题日益凸显。为了加强网络安全管理&#xff0c;提升网络服务的安全性和可靠性&#xff0c;GB-T 43694-2024《网络安全技术 证书应用综合服务接口规范》应运而生。这份文件是 网络安全领域的标准之一&…...

AI大模型:掌握未知,开启未来

AI大模型的工作原理 AI大模型是指通过大量数据和复杂算法训练出的能够理解和生成自然语言文本的人工智能模型。它们背后的核心技术主要包括深度学习、神经网络和自然语言处理。以下是详细的工作原理以及通俗易懂的类比&#xff1a; 1. 数据收集和预处理 AI大模型的训练首先需…...

【C语言习题】26.字符逆序

文章目录 1.描述2.解题思路3.具体代码 1.描述 输入描述: 将一个字符串str的内容颠倒过来&#xff0c;并输出。可以有空格 数据范围&#xff1a;1≤&#x1d459;&#x1d452;&#x1d45b;(&#x1d460;&#x1d461;&#x1d45f;)≤10000 1≤len(str)≤10000 输出描述&…...

windows和linux下的库文件比较

在Windows和Linux操作系统中&#xff0c;库文件&#xff08;lib、dll、.a、.so&#xff09;都扮演着重要的角色&#xff0c;但它们之间存在一些关键的区别。以下是这些库文件之间的主要差异&#xff1a; Windows lib 静态链接库&#xff08;Static Link Library&#xff09;…...

第七十九节 Java面向对象设计 - Java访问级别

Java面向对象设计 - Java访问级别 类简单名称是 class 关键字和 {)之间的名称。 当我们通过简单的名称引用一个类时&#xff0c;编译器在引用类所在的同一个包中查找该类声明。 我们可以使用全名来引用一个类如下。 com.w3cschool.Dog aDog;指定类的访问级别的一般语法是 &…...

Vue进阶之Vue项目实战(四)

Vue项目实战 出码功能知识介绍渲染器性能调优使用 vue devtools 进行分析使用“渲染”进行分析判断打包构建的产物是否符合预期安装插件使用位置使用过程使用lighthouse分析页面加载情况使用performance分析页面加载情况应用自动化部署与发布CI/CD常见的CI/CD服务出码功能 出码…...

fix leakage脚本

芯片的PPA追求是无止境的&#xff0c;因而在修时序的过程中我们需要对设计修复leakage&#xff0c;降低芯片的静态功耗。 以下分享一个典型的leakage脚本 set design 1 set version "V1" set date [exec date %m%d%H%M] set working_directory ${design}_${version}…...

MySQL中视图是什么,有什么作用

目录 一、视图的简介 1.1 什么是视图&#xff1f; 1.2 为什么使用视图&#xff1f; 1.3 视图有哪些规则与限制&#xff1f; 1.4 视图能否更新&#xff1f; 二、视图的创建 三、视图的作用 3.1 用视图简化复杂的联结 3.2 用视图格式化检索出的数据 3.3 用视图过滤数据…...

【面试题】JavaScript基础高频面试(下)

10、Javascript 闭包是什么,闭包形成的原因和闭包的用途 &#xff1f; 闭包&#xff08;Closure&#xff09;是 JavaScript 中的一个非常重要的概念。简单地说&#xff0c;闭包就是一个函数能够访问另一个函数的作用域。这是因为在 JavaScript 中&#xff0c;函数是一等公民&a…...

对于个人而言,大数据时代如何更好地管理自己的信息?

在大数据时代&#xff0c;管理个人信息变得尤为重要。以下是几个建议来更好地管理个人信息&#xff1a; 认识和了解自己的数字足迹&#xff1a;了解自己在互联网上的活动&#xff0c;包括浏览历史、社交媒体和在线购物数据等。通过查阅自己的帐户设置和隐私选项&#xff0c;可以…...

oj项目后端分析

1.菜单管理 我们菜单管理有菜单表(sys_menu)&#xff0c;还有用户角色表&#xff08;sys_role&#xff09;&#xff0c;菜单表是用于管理我们用户所拥有的权限&#xff0c;不同的用户所看到的页面是不一样的&#xff0c;由于一些用户他能够看到题库管理和考题管理&#xff0c;还…...

书籍学习|基于SprinBoot+vue的书籍学习平台(源码+数据库+文档)

书籍学习平台 目录 基于SprinBootvue的书籍学习平台 一、前言 二、系统设计 三、系统功能设计 1平台功能模块 2后台功能模块 5.2.1管理员功能模块 5.2.2用户功能模块 5.2.3作者功能模块 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 …...

AI学习指南数学工具篇-MATLAB中的凸优化工具

AI学习指南数学工具篇-MATLAB中的凸优化工具 在人工智能领域&#xff0c;凸优化是一个非常重要的数学工具&#xff0c;它在机器学习、深度学习、数据分析等领域都有着广泛的应用。而MATLAB作为一款强大的数学工具软件&#xff0c;提供了丰富的凸优化工具和函数&#xff0c;为用…...

散户如何参与期权交易?

期权就是股票&#xff0c;唯一区别标的物上证指数&#xff0c;会看大盘吧&#xff0c;期权交易两个方向认购做多&#xff0c;认沽做空&#xff0c;双向t0交易没了&#xff0c;期权交易跟期货一样&#xff0c;对的&#xff0c;玩的也是合约&#xff0c;唯一区别没有保证金不会爆…...

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…...

智慧医疗能源事业线深度画像分析(上)

引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...

React Native 开发环境搭建(全平台详解)

React Native 开发环境搭建&#xff08;全平台详解&#xff09; 在开始使用 React Native 开发移动应用之前&#xff0c;正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南&#xff0c;涵盖 macOS 和 Windows 平台的配置步骤&#xff0c;如何在 Android 和 iOS…...

从零实现富文本编辑器#5-编辑器选区模型的状态结构表达

先前我们总结了浏览器选区模型的交互策略&#xff0c;并且实现了基本的选区操作&#xff0c;还调研了自绘选区的实现。那么相对的&#xff0c;我们还需要设计编辑器的选区表达&#xff0c;也可以称为模型选区。编辑器中应用变更时的操作范围&#xff0c;就是以模型选区为基准来…...

Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)

概述 在 Swift 开发语言中&#xff0c;各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过&#xff0c;在涉及到多个子类派生于基类进行多态模拟的场景下&#xff0c;…...

对WWDC 2025 Keynote 内容的预测

借助我们以往对苹果公司发展路径的深入研究经验&#xff0c;以及大语言模型的分析能力&#xff0c;我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际&#xff0c;我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测&#xff0c;聊作存档。等到明…...

Qt Http Server模块功能及架构

Qt Http Server 是 Qt 6.0 中引入的一个新模块&#xff0c;它提供了一个轻量级的 HTTP 服务器实现&#xff0c;主要用于构建基于 HTTP 的应用程序和服务。 功能介绍&#xff1a; 主要功能 HTTP服务器功能&#xff1a; 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...

土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等

&#x1f50d; 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术&#xff0c;可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势&#xff0c;还能有效评价重大生态工程…...

Ascend NPU上适配Step-Audio模型

1 概述 1.1 简述 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统&#xff0c;支持多语言对话&#xff08;如 中文&#xff0c;英文&#xff0c;日语&#xff09;&#xff0c;语音情感&#xff08;如 开心&#xff0c;悲伤&#xff09;&#x…...

听写流程自动化实践,轻量级教育辅助

随着智能教育工具的发展&#xff0c;越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式&#xff0c;也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建&#xff0c;…...