翻牌器特效--vue3 封装组件

1.效果图

2.下面为封装好的代码,在页面中引入即可 html

<template><div id="flip-container" v-if="flag == false"><div id="digit-1"class="digit">0</div><div id="digit-2"class="digit">0</div><div id="digit-3"class="digit">0</div><div id="digit-4"class="digit">0</div><!-- <div id="digit-5" class="digit" >0</div> --></div><div id="flip-container" v-if="flag"><div id="digit-1"class="digit">0</div><div id="digit-2"class="digit">0</div><div id="digit-3"class="digit">0</div><div id="digit-4"class="digit">0</div><div id="digit-5" class="digit" >0</div></div>
</template>

3.javaScript

<script setup>import {onMounted,defineProps} from 'vue'// defineProps中括号的值是传值页面等号左边的值const props = defineProps(['data'])let flag = falsevar data1 = props.datadata1 = digitize(data1)if (data1.length == 4) {// flag = false} else if (data1.length == 5) {flag = true}function digitize (n) {  //接受一个number类参数,拆分成一个数组并返回var str = n + "";    //加上空字符中,把接收的参数转换为字符串var arr = [];         //声明结果空数组,稍后返回str.split("").forEach(function (item) {   //调用split,以空字符串为分隔符切割字符串并返回数组,在数组上调用forEach方法arr.push(parseInt(item));    //对传入的每个字符用pasreInt转换为数字并压入arr数组})return arr;  //返回结果数组}function fetchData(){// 遍历每一位数字for (var i = 0; i < data1.length; i++) {var digitElement = document.getElementById('digit-' + (i + 1));var currentDigit = parseInt(digitElement.innerText);var newDigit = parseInt(data1[i]);// 如果当前数字和新数字不相等,则翻转数字if (currentDigit !== newDigit) {digitElement.classList.add('flipped');// 使用 setTimeout 延迟恢复正常状态,等待翻转动画完成(function (element, digit) {setTimeout(function () {element.innerText = digit;element.classList.remove('flipped');}, 500);})(digitElement, newDigit);}}}onMounted(()=>{fetchData()})
</script>

4.css

<style>
#flip-container {display: flex;justify-content: center;margin-bottom: 20px;margin-left: 8px;
}.digit {width: 15px;height: 33px;background-color: #1488cc;color: #00ffff;font-size: 20px;text-align: center;transform-style: preserve-3d;perspective: 1000px;margin-left: 5px;transition: transform 1s ease-in-out;border-radius: 2.5696px;line-height: 33px;
}.digit.flipped {transform: rotateX(180deg);
}
</style>

5.需要页面引入即可

<flipper v-if="fourTodayTotalWeightFlag" :data="todayTotalWeight"></flipper><div>当日收货量(Kg)</div>import flipper from '@/components/flipper/flipper.vue' 

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

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

相关文章

NVIDIA安装

电脑显卡类型 两种方法&#xff1a; 选择对应的版本 产品系列下载Notebooks&#xff0c;这样产品才会出现Laptop的GPU&#xff08;Laptop是代表笔记本&#xff09;。 下载完之后双击安装&#xff0c;更改下载路径后&#xff0c;选择默认的下载即可。 卸载 如果之后要卸载…

PM2学习

目录 PM2简介 pm2的主要特性 PM2安装 启动PM2项目 查看应用列表&#xff08;查看当前机器执行的所有进程&#xff09; 查看某个应用详情 重启 停止 删除 日志查看 负载均衡 监控CPU/内存 内存使用超过上限自动重启 监听代码变化/自动重启 PM2简介 PM2是常用的node…

【React】Antd 组件基本使用

Antd 组件基本使用 第一步 安装并引入 antd 包 使用命令下载这个组件库 yarn add antd在我们需要使用的文件下引入&#xff0c;我这里是在 App.jsx 内引入 import { Button } from antd现在我们可以在 App 中使用 Button 组件 <div>App..<Button type"prima…

点成分享丨如何提高旋转蒸发仪的蒸馏提纯效率

旋转蒸发仪&#xff1a; 主要用于医药、化工和制药等行业的浓缩、结晶、干燥、分离及溶媒回收。其原理为在真空条件下&#xff0c;恒温加热&#xff0c;使旋转瓶恒速旋转&#xff0c;物料在瓶壁形成大面积薄膜&#xff0c;高效蒸发。溶媒蒸气经高效玻璃冷凝器冷却&#xff0c;…

module pandas has no attribute Int64Index

pandas报错 pandas 报错解决 pandas 报错 module pandas has no attribute Int64Index 解决 将pandas将为1.1.3版本即可pip uninstall pandas pip install pandas1.1.3 -i https://pypi.tuna.tsinghua.edu.cn/simple/

汽配零件发FBA美国专线

随着电商的迅速发展&#xff0c;跨境电商平台如亚马逊的FBA(Fulfillment by Amazon)服务成为了许多商家选择的销售渠道。对于汽配零件行业来说&#xff0c;发FBA美国专线可以打开更广阔的市场&#xff0c;并且有望获得可观的发展前景。下面将从市场分析和前景两个方面来探讨汽配…

架构开发与优化咨询和实施服务

服务概述 得益于硬件平台算力的提升&#xff0c;汽车电子电气架构的集成度逐渐提高&#xff0c;从单体ECU、到功能域集成控制器、到区域集成控制器&#xff0c;多域融合成为了目前行业中软件工程的重要工作内容。同时&#xff0c;在传统控制器C代码开发的基础上&#xff0c;C、…

Unity优化(1)——合并Mesh

在某些移动端项目中&#xff0c;对于DrawCall的要求是很严格的&#xff0c;我们一般查看DrawCall可以通过Statistics里面的Batches进行查看&#xff0c;一般移动设备的Batches要控制在200左右比较合适&#xff0c;所以降低Batches是很重要的。 我们常常会遇到一个物体下挂载很多…

力扣双周赛 -- 117(容斥原理专场)

class Solution { public:long long c2(long long n){return n > 1? n * (n - 1) / 2 : 0;}long long distributeCandies(int n, int limit) {return c2(n 2) - 3 * c2(n - limit 1) 3 * c2(n - 2 * limit) - c2(n - 3 * limit - 1);} };

RFID技术在危险废物管理中的应用解决方案

一、背景介绍 随着我国经济的快速发展&#xff0c;轻纺、化工、制药、电子等行业的危险废物排放量逐年增加。然而&#xff0c;由于危险废弃物处理不当&#xff0c;可能导致大气、水体和土壤污染&#xff0c;对环境和人体健康造成严重威胁&#xff0c;制约了经济和健康的可持续…

【软考篇】中级软件设计师 第三部分(一)

中级软件设计师 第三部分&#xff08;一&#xff09; 十七. I/O管理软件十八. 输入/输出技术十九. 总线系统二十. 磁盘管理20.1 移臂调度算法20.2 缓冲区 二十一. 操作系统二十二. 数据库22.1 三级模式-两级映射22.2 数据库设计22.3 规范化理论22.4 范式判断22.5 模式分解 十七…

openGauss学习笔记-124 openGauss 数据库管理-设置账本数据库-查看账本历史操作记录

文章目录 openGauss学习笔记-124 openGauss 数据库管理-设置账本数据库-查看账本历史操作记录124.1 前提条件124.2 背景信息124.3 操作步骤 openGauss学习笔记-124 openGauss 数据库管理-设置账本数据库-查看账本历史操作记录 124.1 前提条件 系统中需要有审计管理员或者具有…