【Vue】列表动画

news/2024/7/8 2:29:46

学习内容:
(1)学习Vue里面的状态动画

示例代码:

什么叫状态动画?我们举个例子,首先我这里定一个叫做number 这样的数据项,它的初始值是1,‍‍这块我也不需要这么多的内容了,我只需要展示这个number就可以。‍‍我们来一个 span 标签,然后里面我们用这个number‍‍,

点击的时候,我让它的变成一个增加,怎么办?我让this点number变成10,‍‍
回到页面上我们刷新,一开始是1,当我点增加的时候它变成10,‍‍

当然我放到两行比较好一点,所以这块改成div:

点击变成10:

状态动画指的是‍‍我一开始是1现在变成10,我希望它能有一个缓慢的‍‍过渡的过程,一开始是1,然后变成23456789,然后最终变成10,
是这样的一个动画效果。‍‍

要想实现这样的一个动画效果,我们怎么做?
写代码,看代码:

在这里我先写一个叫做animateNumber,就是说动画过程中展示的一个number,‍‍ta默认也是1,
当我点击的时候,我可以做一些动画效果,我可以怎么做?我可以这么去写。‍‍‍‍

setInterval 我们写一个这样的东西,‍‍每隔100毫秒,我们让this点 animateNumber 加等于每次我让它加1:

如果你这么写之后,我们可以看一下我们页面的效果,‍‍我这里展示的就不是这个number了,而是展示的是animateNumber,我们刷一下点击,‍‍但发现ta有动画效果了,ta会一直往上加,但是ta没有一个停止的时间:

我现在把它改成了10,‍‍【第23行】

所以我希望animate会停留在10上面,我怎么写?
我可以这么去写。‍‍


解读:

一开始 currentNumber是1,【第24行】
然后每隔100毫秒,我让currentNumber加等于1。‍‍【第27行】

这里面我们再判断if 让currentNumber等于10,‍‍
也就是说你最终当前动画的效果已经让 animateNumber 和 number一样都等于10,‍‍【第23行】

这块我就要让动画停掉,我怎么停?
我要给动画一个名字count animation 等于这样的一个动画:

点击增加:

我先把这块的代码做一些优化, 我直接判断this.animateNumber===10的话,我就让它停。

刷新一下,点击增加,‍‍它会有一个从1~10的这样的一个动画效果:

这样的动画,我们就可以通过一些逻辑来改变数据的形式实现这样的动画,所以这种动画是通过控制一些‍‍数据的状态来实现的,那么这样的动画我们把它叫做状态动画,当然我刚才写的代码不严谨,因为你会发现你在点击的时候它依然可以增加,然后它就不会停止了,‍‍

所以我这里要做个判断,怎么判断?‍‍

有的时候‍‍做一些svg 就可以通过数据描述的图片效果的时候,那么我们就可以在这个数据里面去控制一些变量,然后让svg里面的一些坐标‍‍去根据这些变量来做一些控制,那么我们可以做出非常酷炫的状态动画。‍‍

通过数据来控制一些‍‍内容的展示,然后不断改变数据,不断的去通过数据的变化形成一种‍‍我们看起来好像产生出的一种动画效果,这就是状态。
加油!


http://lihuaxi.xjx100.cn/news/31173.html

相关文章

工程项目管理——第一章 软件项目管理概述

项目定义 项目是为了创造一个唯一的产品或提供一个唯一的服务而进行的临时性的努力 项目的特征 有明确的目标项目之间的活动具有相关性限定的周期有独特性资源成本的约束性项目的不确定性 举例: 生活中的小项目:生日聚会、野餐活动、集体婚礼工作中…

前端同源策略和跨域详解

文章目录同源策略和跨域同源策略跨域如何实现跨域JSONPCORS跨域资源共享http proxy >webpack其他不常用的跨域方式同源策略和跨域 同源策略 同源:两个页面的协议、域名、端口号都相同 同源策略:是浏览器提供的一个安全功能(浏览器规定&…

微服务应用性能分析实战08 工匠精神:熟悉 APM 产品的能力是 RD 的分内之事

这一讲我将带你横向回顾下模块一各个章节的关键知识点,并简单铺垫下之后的章节。 在前面的章节,我带你学习了 7 个 APM 开源产品的学习方案和落地实践。由于章节有限,很可能课程所讲述的 APM 产品没有命中你们的选型。但没有关系&#xff0c…

洛谷 P2401 不等序列

思路 用 f(i,j)f(i,j)f(i,j) 表示前 iii 个数的排列中 <<< 的个数为 jjj 的方案数。 现在考虑前 i−1i-1i−1 个数都放好了&#xff0c;放第 iii 个数。设数列为 {4,3,2,1,5,6}\{ 4,3,2,1,5,6\}{4,3,2,1,5,6}&#xff0c;目前构成的符号序列为 {>,>,>,<,…

给计算机专业新生的一些学习建议

一、个人介绍 老学长是一个从双非本科&#xff08;南信大&#xff0c;计算机也还行&#xff0c;专业也有不少大佬&#xff0c;但比例还是少数&#xff09;考研至南京大学的过来人&#xff0c;虽然还没正式进入过工作&#xff0c;但是对于考研、春招面试等还是有了丰富的经历。最…

安捷伦Agilent DSOX3032A示波器

Keysight DSOX3032A 示波器的特性和规格包括&#xff1a; Agilent DSOX3032A 的特性包括&#xff1a; 每秒一百万个波形更新率MegaZoom IV 智能内存技术8.5 英寸 WVGA 大显示屏可选分段内存业界首款 5 合 1 仪器&#xff1a; 示波器 数字频道内置 20 MHz 函数/任意波形发生器…

十年回报155%,最大回撤20%:实证多指数动量轮动模型

持续行动1期 54/100&#xff0c;“AI技术应用于量化投资研究”。 昨天的文章相当于是backtrader的"hello world"&#xff0c;直接感受一下bt的使用。 今天开始&#xff0c;我们要来实战一下&#xff0c;“轮动”模型是量化中经典的范式。 如果仅交易一个标的&…

Elasticsearch部署和问题汇总

1. 资源准备 1.1 镜像资源 由于资源下载是外网会比较慢&#xff0c;推荐使用华为云提供的镜像:https://mirrors.huaweicloud.com/elasticsearch-6.8.3.tar.gz 1.3 资源规划 系统主机ip部署内容JDKcentso 7.9192.168.40.131elasticsearch1.8.X2. 配置JDK环境 由于ES是需要J…