手写 分页

子组件:TimePage.vue

效果图

在这里插入图片描述

<template><div class="click-scroll-X"><!----><!-- eslint-disable-next-line  --><span class="left_btn" :disabled="pageNo == 1" @click="leftSlide"><</span><!-- 中间 --><div class="scroll_wrapper" ref="wrapperCon"><div class="scroll_list">![在这里插入图片描述](https://img-blog.csdnimg.cn/e75ad999561c4016bad4f13b9b447537.png)<divclass="item":class="{ active: pageNo == item.value }"@click="clickItem(item)"v-for="(item, index) in timeList":key="index">{{ item.label }}</div></div></div><!----><spanclass="right_btn":disabled="clickValue.value == timeList.length"@click="rightSlide":class="{ active: pageNo == clickValue.value + 1 }">></span><button>前往</button><button>00</button>: <button>30</button></div>
</template><script>
export default {name: "TimePage",props: ["timeList", "pageNo"],data() {return {clickValue: {},};},methods: {clickItem(item) {console.log(item, "item-----");this.clickValue = item;// let timeLength = this.timeList.length; //时间段个数this.$emit("getPageNo", this.clickValue);},// 左箭头leftSlide() {// 保存滚动盒子左侧已滚动的距离let left = this.$refs.wrapperCon.scrollLeft;let num = 0;clearInterval(this.timer);this.timer = null;this.timer = setInterval(() => {//   !left:已经滚动到最左侧//   一次性滚动距离(可调节)if (!left || num >= 360) {// 停止滚动clearInterval(this.timer);this.timer = null;return;}// 给滚动盒子元素赋值向左滚动距离this.$refs.wrapperCon.scrollLeft = left -= 30;// 保存向左滚动距离(方便判断一次性滚动多少距离)num += 30;}, 20);// 20:速度(可调节)},// 右箭头rightSlide() {// 保存滚动盒子左侧已滚动的距离let left = this.$refs.wrapperCon.scrollLeft;// 保存元素的整体宽度let scrollWidth = this.$refs.wrapperCon.scrollWidth;// 保存元素的可见宽度let clientWidth = this.$refs.wrapperCon.clientWidth;console.log(left, scrollWidth, clientWidth, "left999999");let num = 0;clearInterval(this.timer);this.timer = setInterval(() => {// 已经滚动距离+可见宽度// left+clientWidth>=scrollWidth:滚动到最右侧// num>=300一次性滚动距离if (left + clientWidth >= scrollWidth || num >= 360) {clearInterval(this.timer);return;}// 给滚动盒子元素赋值向左滚动距离this.$refs.wrapperCon.scrollLeft = left += 30;console.log(this.$refs.wrapperCon.scrollLeft," this.$refs.wrapperCon.scrollLeft----");// 保存向左滚动距离(方便判断一次性滚动多少距离)num += 30;}, 20);// 20:速度(可调节)},},computed: {},
};
</script><style lang="less" scoped>
.click-scroll-X {// text-align: right;display: flex;align-items: center;justify-content: end;margin-right: 20px;margin-top: 20px;.left_btn {font-size: 20px;cursor: pointer;margin: 0px 15px 0;}.right_btn {font-size: 20px;cursor: pointer;margin: 0px 15px 0;}button {margin: 0 5px;background-color: #f4f4f5;color: #606266;outline: none;border-radius: 2px;// padding: 0 4px;vertical-align: top;display: inline-block;font-size: 13px;height: 28px;line-height: 28px;cursor: pointer;box-sizing: border-box;text-align: center;border: 0;&[disabled] {color: #c0c4cc;cursor: not-allowed;}&.active {cursor: not-allowed;background-color: #409eff;color: #fff;}}.scroll_wrapper {width: 480px;overflow-x: scroll;.scroll_list {display: flex;align-items: center;justify-content: space-between;.item {cursor: pointer;width: 60px;height: 30px;display: flex;align-items: center;justify-content: center;// border: 1px solid #ccc;// border-radius: 3px;// box-sizing: border-box;flex-shrink: 0;}}}
}
.active {color: skyblue;
}
/*隐藏滚动条*/
.scroll_wrapper::-webkit-scrollbar {display: none;
}
</style>

父组件: ParentTime.vue

<template><div id="app"><TimePage:timeList="timeArray":pageNo="page"@getPageNo="getPageNo"></TimePage></div>
</template><script>
import TimePage from "./components/TimePage.vue";
export default {name: "App",data() {return {// 初始化页数page: 1,timeArray: [{ value: 0, label: "00:00" },{ value: 1, label: "00:15" },{ value: 2, label: "00:30" },{ value: 3, label: "00:45" },{ value: 4, label: "01:00" },{ value: 5, label: "01:15" },{ value: 6, label: "01:30" },{ value: 7, label: "01:45" },{ value: 8, label: "02:00" },{ value: 9, label: "02:15" },{ value: 10, label: "02:30" },{ value: 11, label: "02:45" },{ value: 12, label: "03:00" },{ value: 13, label: "03:15" },{ value: 14, label: "03:30" },{ value: 15, label: "03:45" },{ value: 16, label: "04:00" },{ value: 17, label: "04:15" },{ value: 18, label: "04:30" },{ value: 19, label: "04:45" },{ value: 20, label: "05:00" },{ value: 21, label: "05:15" },{ value: 22, label: "05:30" },{ value: 23, label: "05:45" },{ value: 24, label: "06:00" },{ value: 25, label: "06:15" },{ value: 26, label: "06:30" },{ value: 27, label: "06:45" },{ value: 28, label: "07:00" },{ value: 29, label: "07:15" },{ value: 30, label: "07:30" },{ value: 31, label: "07:45" },{ value: 32, label: "08:00" },{ value: 33, label: "08:15" },{ value: 34, label: "08:30" },{ value: 35, label: "08:45" },{ value: 36, label: "09:00" },{ value: 37, label: "09:15" },{ value: 38, label: "09:30" },{ value: 39, label: "09:45" },{ value: 40, label: "10:00" },{ value: 41, label: "10:15" },{ value: 42, label: "10:30" },{ value: 43, label: "10:,45" },{ value: 44, label: "11:00" },{ value: 45, label: "11:15" },{ value: 46, label: "11:30" },{ value: 47, label: "11:45" },{ value: 48, label: "12:00" },{ value: 49, label: "12:15" },{ value: 50, label: "12:30" },{ value: 51, label: "12:45" },{ value: 52, label: "13:00" },{ value: 53, label: "13:15" },{ value: 54, label: "13:30" },{ value: 55, label: "13:45" },{ value: 56, label: "14:00" },{ value: 57, label: "14:15" },{ value: 58, label: "14:30" },{ value: 59, label: "14:45" },{ value: 60, label: "15:00" },{ value: 61, label: "15:15" },{ value: 62, label: "15:30" },{ value: 63, label: "15:45" },{ value: 64, label: "16:00" },{ value: 65, label: "16:15" },{ value: 66, label: "16:30" },{ value: 67, label: "16:45" },{ value: 68, label: "17:00" },{ value: 69, label: "17:15" },{ value: 70, label: "17:30" },{ value: 71, label: "17:45" },{ value: 72, label: "18:00" },{ value: 73, label: "18:15" },{ value: 74, label: "18:30" },{ value: 75, label: "18:45" },{ value: 76, label: "19:00" },{ value: 77, label: "19:15" },{ value: 78, label: "19:30" },{ value: 79, label: "19:45" },{ value: 80, label: "20:00" },{ value: 81, label: "20:15" },{ value: 82, label: "20:30" },{ value: 83, label: "20:45" },{ value: 84, label: "21:00" },{ value: 85, label: "21:15" },{ value: 86, label: "21:30" },{ value: 87, label: "21:45" },{ value: 88, label: "22:00" },{ value: 89, label: "22:15" },{ value: 90, label: "22:30" },{ value: 91, label: "22:45" },{ value: 92, label: "23:00" },{ value: 93, label: "23:15" },{ value: 94, label: "23:30" },{ value: 95, label: "23:45" },],};},computed: {// timeLength() {//   return this.timeArray.length;// },},methods: {getPageNo(item) {this.page = item.value;console.log(this.page, item, "-----");},},components: {TimePage,},
};
</script><style scoped></style>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/101956.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PanoFlow:学习360°用于周围时间理解的光流

1.摘要&#xff1a; 光流估计是自动驾驶和机器人系统中的一项基本任务&#xff0c;它能够在时间上解释交通场景。自动驾驶汽车显然受益于360提供的超宽视野&#xff08;FoV&#xff09;◦ 全景传感器。 然而&#xff0c;由于全景相机独特的成像过程&#xff0c;为针孔图像设计…

NSIC2050JBT3G 车规级120V 50mA ±15% 用于LED照明的线性恒流调节器(CCR) 增强汽车安全

随着汽车行业的巨大变革&#xff0c;高品质的汽车氛围灯效、仪表盘等LED指示灯效已成为汽车内饰设计中不可或缺的元素。深力科安森美LED驱动芯片系列赋能智能座舱灯效充满艺术感和科技感——NSIC2050JBT3G LED驱动芯片&#xff0c;实现对每路LED亮度和颜色进行细腻控制&#xf…

SLAM从入门到精通(launch文件学习)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 大家应该还记得我们在一开始学习ros的时候&#xff0c;如果需要启动一个节点的话&#xff0c;需要首先打开roscore&#xff0c;接着用rosrun打开对…

shiro550复现环境搭建

前言 Shiro反序列化漏洞指的是Apache Shiro安全框架中的一个潜在漏洞&#xff0c;该漏洞可能导致攻击者能够通过精心构造的恶意序列化对象来执行任意代码或进行拒绝服务&#xff08;DoS&#xff09;攻击。 这种漏洞的根源是在Shiro的RememberMe功能中&#xff0c;当用户选择“…

制造业单项冠军(国家级、广东省、深圳市)奖励政策及申报对比

制造业单项冠军的头衔含金量极高&#xff0c;是某一细分领域的“领头雁”。下面深科信对“制造业单项冠军”&#xff08;国家级、广东省级、深圳市级&#xff09;的认定标准、奖励政策进行梳理 。 2023年9月25日&#xff0c;工信部办公厅正式发布《关于开展2023年制造业单项冠军…

【TensorFlow2 之012】TF2.0 中的 TF 迁移学习

#012 TensorFlow 2.0 中的 TF 迁移学习 一、说明 在这篇文章中&#xff0c;我们将展示如何在不从头开始构建计算机视觉模型的情况下构建它。迁移学习背后的想法是&#xff0c;在大型数据集上训练的神经网络可以将其知识应用于以前从未见过的数据集。也就是说&#xff0c;为什么…

linux 安装mysql

1、下载mysql安装包 2、创建mysql文件夹 mkdir /usr/local/mysql 3、解压mysql安装包&#xff0c;并将解压出来的文件夹下面的内容全部移动到/usr/local/mysql下 解压 tar zxvf mysql-5.7.39-linux-glibc2.12-x86_64.tar.gz 移动 mv /usr/local/src/mysql-5.7.39-linux-gl…

Unity设计模式——装饰模式

装饰模式&#xff08;Decorator&#xff09;&#xff0c;动态地给一个对象添加一些额外的职责&#xff0c;就增加功能来说&#xff0c;装饰模式比生成子类更为灵活。 Component类&#xff1a; abstract class Component : MonoBehaviour {public abstract void Operation(); …

华为认证 | HCIP-Datacom,这门认证正式发布新版本!

华为认证数通高级工程师HCIP-Datacom-Campus Network Planning and Deployment V1.5&#xff08;中文版&#xff09;自2023年9月28日起&#xff0c;正式在中国区发布。 01 发布概述 基于“平台生态”战略&#xff0c;围绕“云-管-端”协同的新ICT技术架构&#xff0c;华为公司…

互联网性能和可用性优化CDN和DNS

当涉及到互联网性能和可用性优化时&#xff0c;DNS&#xff08;Domain Name System&#xff09;和CDN&#xff08;Content Delivery Network&#xff09;是两个至关重要的元素。它们各自发挥着关键作用&#xff0c;以确保用户能够快速、可靠地访问网站和应用程序。在本文中&…

软件工程与计算总结(六)需求分析方法

本贴介绍需求分析方法&#xff0c;涉及到诸多实践性的东西&#xff0c;掌握各种图表的绘制是重中之重~ 一.需求分析基础 1.原因 需求获取中得到的信息仅仅解释了用户对软件系统的理解与期待&#xff0c;使用的是实际业务的表达方式&#xff0c;还不是开发者能够立即加以实现…

【算法|动态规划No.16】leetcode931. 下降路径最小和

个人主页&#xff1a;兜里有颗棉花糖 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 兜里有颗棉花糖 原创 收录于专栏【手撕算法系列专栏】【LeetCode】 &#x1f354;本专栏旨在提高自己算法能力的同时&#xff0c;记录一下自己的学习过程&#xff0c;希望…

VSCODE+PHP8.2配置踩坑记录

VSCODEPHP8.2配置踩坑记录 – WhiteNights Site 我配置过的最恶心的环境之一&#xff1a;windows上的php。另一个是我centos服务器上的php。 进不了断点 端口配置和xdebug的安装 这个应该是最常见的问题了。从网上下载完php并解压到本地&#xff0c;打开vscode&#xff0c;安装…

基于SpringBoot的网上摄影工作室

目录 前言 一、技术栈 二、系统功能介绍 用户信息管理 作品分类管理 轮播图管理 摄影作品管理 摄影作品收藏 摄影圈 摄影作品发布 三、核心代码 1、登录模块 2、文件上传模块 3、代码封装 前言 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统…

华为云云耀云服务器L实例评测|华为云上的CentOS性能监测与调优指南

目录 引言 ​编辑1 性能调优的基本要素 2 性能监控功能 2.1 监控数据指标 2.2 数据历史记录 2.3 多种统计指标 3 性能优化策略 3.1 资源分配 3.2 磁盘性能优化 3.3 网络性能优化 3.4 操作系统参数和内核优化 结论 引言 在云计算时代&#xff0c;性能优化和调优对于…

Qt QPair

QPair 文章目录 QPair 摘要QPairQPair 特点代码示例QPair 与 QMap 区别 关键字&#xff1a; Qt、 QPair、 QMap、 键值、 容器 摘要 今天在观摩小伙伴撸代码的时候&#xff0c;突然听到了QPair自己使用Qt开发这么就&#xff0c;竟然都不知道&#xff0c;所以趁没有被人发…

3、在 CentOS 8 系统上安装 PostgreSQL 15.4

PostgreSQL&#xff0c;作为一款备受欢迎的开源关系数据库管理系统&#xff08;RDBMS&#xff09;&#xff0c;已经存在了三十多年的历史。它提供了SQL语言支持&#xff0c;用于管理数据库和执行CRUD操作&#xff08;创建、读取、更新、删除&#xff09;。 由于其卓越的健壮性…

k8s 集群部署 kubesphere

一、最小化部署 kubesphere 1、在已有的 Kubernetes 集群上部署 KubeSphere&#xff0c;下载 YAML 文件: wget https://github.com/kubesphere/ks-installer/releases/download/v3.4.0/kubesphere-installer.yaml wget https://github.com/kubesphere/ks-installer/releases/…

iPhone手机记笔记工具选择用哪个

iPhone手机大家应该都比较熟悉&#xff0c;其使用性能是比较流畅的&#xff0c;在iPhone手机上记录笔记可以帮助大家快速地进行总结工作、记录工作内容等&#xff0c;在iPhone手机上记笔记工具选择用哪个呢&#xff1f; 可以在iPhone手机上使用的笔记工具是比较多的&#xff0…

Andriod学习笔记(一)

写在前面的话 App开发的编程语言Java和KotlinXML App连接的数据库App工程目录结构模块级别的编译配置文件清单文件 界面显示与逻辑处理 安卓是一种基于Linux内核的自由及开放源代码的操作系统&#xff0c;主要使用于移动设备。 Mininum SDK表示安卓该版本以上的设备都可以运行该…