iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >Vue3之列表动画和状态动画示例详解
  • 874
分享到

Vue3之列表动画和状态动画示例详解

Vue3 列表动画状态动画Vue3 动画 2023-05-14 11:05:55 874人浏览 安东尼
摘要

目录概述示例解析列表动画状态动画总结概述 列表动画和状态动画都是增加用户体验的方法,当一个列表添加数据或者移除数据时,如果直接添加,突然显示,未免有些突兀,而且用户可能会不知道此时

概述

列表动画和状态动画都是增加用户体验的方法,当一个列表添加数据或者移除数据时,如果直接添加,突然显示,未免有些突兀,而且用户可能会不知道此时已经有数据加入了,从列表中移除数据也是,用户很有可能不知道当前已经移除了哪一条数据。但是如果加上动画就会好很多了,有趣的动画可以吸引用户的注意力,让用户关注新增和移除的数据。这就是列表动画,而状态动画是指从一个状态到另一个状态的变化,如果直接变过去,就会显得比较生硬,但是如果是加了动画慢慢过渡过去会好很多。

示例解析

列表动画

如上图所示我们要展示一个数字构成的列表,右面有一个按钮,点击按钮会执行一个动画增加数字。代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta Http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>列表动画</title>
    <style>
        .list-item{
            display: inline-block;
            margin-right: 10px;
        }
        .v-enter-from{
            opacity: 0;
            transfORM: translateY(30px);
        }
        .v-enter-active{
            transition: all 1s ease-in;
        }
        .v-enter-to{
            opacity: 1;
            transform: translateY(0px);
        }
        .v-move{
            transition: 2.5s ease-in;
        }
    </style>
    <script src="https://unpkg.com/Vue@next"></script>
</head>
<body>
    <div id="root"></div>
</body>
<script>
 const app = Vue.createApp({
        data() {
            return {
               list:[1,2,3]
            }
        },
        methods: {
            handleClick(){
               this.list.unshift(this.list.length+1);
            }
        },
        template: 
        `
            <div>
                <transition-group>
                <span class="list-item" v-for = "item in list" :key="item">{{item}}</span>
                </transition-group>
                <button @click="handleClick">add</button> 
            </div>
        `
    });
    const vm = app.mount('#root');
</script>

我们先是使用CSS将列表的动画效果定义出来,这个效果和之前讲的动画定义差不多,这里不过多赘述,定义好动画后,我们在Vue的template中使用一个span将我们的数字列表显示出来,然后最关键的是我们要使用 <transition-group>标签将我们要做动画的部分包裹起来。当我们点击按钮的时候,执行js函数往列表中新增一个列表长度加一的数。动画效果读者可以,运行查看。

状态动画

状态动画比较简单,就是从一个状态到另一个状态中间加一些过渡的值,主要是通过数据控制内容的展示,比如从1变到10,如果直接1马上变成10,则显得很生硬,但是中间加一写其他数字,比如2,3,4...最后再变成10就会好很多,代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>状态动画</title>
    <script src="https://unpkg.com/vue@next"></script>
</head>
<body>
    <div id="root"></div>
</body>
<script>
    // 状态动画:通过数据控制内容的展示
 const app = Vue.createApp({
        data() {
            return {
               number:1,
               animateNumber: 1
            }
        },
        methods: {
            handleClick(){
                this.number =10;
                if(this.animateNumber<this.number){
                const animation =  setInterval(()=>{
                this.animateNumber += 1;
                    if(this.animateNumber === 10){
                    clearInterval(animation)
                     }
               },100);
               }
            }
        },
        template: 
        `
            <div>
                <div>{{animateNumber}}</div>
                <button @click="handleClick">do</button>  
            </div>
        `
    });
    const vm = app.mount('#root');
</script>

列表动画比较简单,我们点击执行按钮的时候,使用js函数每隔100 毫秒就去修改一下当前显示的值,直到值变成最终想要状态的值就停止。

总结

列表动画和状态动画都是为了增强用户体验,列表动画主要是在列表中的数据变化的时候执行的,而状态动画主要是当一个状态更换到零一个状态的时候执行,列表动画通过vue提供的<transition-group>标签包裹需要执行动画的部分实现,而列表动画通过控制数据内容的展示实现,本文介绍的都是简单的动画效果,读者若需要实现更炫丽的动画效果,请关注编程网其它相关文章!

--结束END--

本文标题: Vue3之列表动画和状态动画示例详解

本文链接: https://www.lsjlt.com/news/203122.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Vue3之列表动画和状态动画示例详解
    目录概述示例解析列表动画状态动画总结概述 列表动画和状态动画都是增加用户体验的方法,当一个列表添加数据或者移除数据时,如果直接添加,突然显示,未免有些突兀,而且用户可能会不知道此时...
    99+
    2023-05-14
    Vue3 列表动画状态动画 Vue3 动画
  • Vue3列表动画和状态动画怎么应用
    今天小编给大家分享一下Vue3列表动画和状态动画怎么应用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。概述列表动画和状态动画...
    99+
    2023-07-05
  • css3的动画特效之动画序列的示例分析
    这篇文章给大家分享的是有关css3的动画特效之动画序列的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。首先复习一下animation动画添加各种参数(1)infinite...
    99+
    2024-04-02
  • Compose 动画艺术探索之可见性动画示例详解
    目录正文从可见性动画看起进入过渡——EnterTransition关闭过渡——ExitTransition过渡—&mdas...
    99+
    2024-04-02
  • Vue3之元素和组件的动画切换实现示例详解
    目录前言实例解析元素间的动画切换组件间的动画切换总结前言 当我们使用某个软件或者网站完成一些交互的时候,会发现做得很好的网站和软件都少不了动画的润色,完成的功能都是从一个界面跳转到...
    99+
    2023-05-14
    Vue3元素组件动画切换 Vue3 动画切换
  • Vue3之使用js实现动画示例解析
    目录概述实例解析总结概述 动画的实现其实不仅可以使用CSS的方式实现,而且还可以使用js的方式实现,二者有啥区别呢?CSS更加注重动画的展现,性能更好,而js的方式性能稍微差点,但...
    99+
    2023-05-14
    Vue3使用js实现动画 Vue3 js实现动画
  • JetpackCompose实现列表和动画效果详解
    目录创建一个列表消息卡片可交互的动画效果创建一个列表消息卡片 到目前为止,我们只有一个消息的卡片,看上去有点单调,所以让我们来改善它,让它拥有多条信息。我们需要创建一个能够显示多条消...
    99+
    2024-04-02
  • Flutter封装组动画混合动画AnimatedGroup示例详解
    目录一、来源二、AnimatedGroup使用示例:三、AnimatedGroup源码最后一、来源 项目中遇到混合动画的情况,每次实现都需要生命一堆属性,让代码变得杂乱,难以维护。...
    99+
    2023-01-28
    Flutter封装AnimatedGroup Flutter封装组动画混合动画
  • angular状态和动画是什么
    本篇内容主要讲解“angular状态和动画是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“angular状态和动画是什么”吧!状态1、什么是状态状态表示的是要进行运动的元素在运动的不同时期所...
    99+
    2023-07-05
  • 动画详解Vue3的Composition Api
    目录回顾Option ApiOption Api的缺陷Composition Api 众所周知,Vue3.0带来了一个全新的特性——Composition A...
    99+
    2024-04-02
  • vue3过渡动画的详解
    目录一、vue中动画简单介绍二、vue的transition动画三、transition组件的实现原理四、transition过渡动画的class属性五、class的添加时机和命名规...
    99+
    2024-04-02
  • angular学习之深入聊聊状态和动画
    本篇文章带大家深入了解一下angular中的状态和动画,简单介绍一下创建动画的方法,并聊聊关键帧动画、动画回调、可重用动画、交错动画等知识点,希望对大家有所帮助!状态1、什么是状态状态表示的是要进行运动的元素在运动的不同时期所呈现的样式。2...
    99+
    2023-05-14
    状态 动画 Angular
  • Vue3过渡动画的示例分析
    这期内容当中小编将会给大家带来有关Vue3过渡动画的示例分析,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。背景在我的 《Vue 3 开发企业级音乐 App》课程问答区,有个同学提了个问题,在歌手列表到歌手...
    99+
    2023-06-22
  • Android动画之小球拟合动画的示例分析
    这篇文章给大家分享的是有关Android动画之小球拟合动画的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Android动画之小球拟合动画实例实现效果:动画组成:通过三阶贝塞尔曲线来拟合圆,拟合系数的由来...
    99+
    2023-05-31
    android
  • vue3中过渡动画的示例分析
    这篇文章主要介绍了vue3中过渡动画的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。一、vue中动画简单介绍在vue中如果一些过程不存在动画效果,则表现出来的结果是比...
    99+
    2023-06-29
  • Android动画之TranslateAnimation用法案例详解
    我们在实际的开发过程中,有很多地方需要使用TranslateAnimation,本文是爱站技术频道小编为大家做的简单介绍,下面是详解Android 动画之TranslateAnima...
    99+
    2024-04-02
  • GoJs中的动画使用示例详解
    目录前言GoJs动画的使用使用默认的动画通过AnimationTrigger修改属性动画删除节点的动画提示性的回弹动画总结前言 在可视化图形的使用过程中,在图形初次渲染的时候、增加节...
    99+
    2023-05-18
    GoJs动画使用 GoJs动画
  • react native reanimated实现动画示例详解
    目录背景动画拆分实现抖动定义动画实现缩放动画改变内容Reanimated 原理浅析总结背景 在一次 App 迭代中,UI 想要给按钮添加一个动画效果,在对接的过程中,UI 表示直接...
    99+
    2023-03-06
    react native reanimated 动画 react native reanimated
  • AndroidFlutter实现3D动画效果示例详解
    目录前言AnimatedWidget 简介3D 旋转动画的实现总结前言 上一篇我们介绍了 Animation 和 AnimationController...
    99+
    2024-04-02
  • Vuetransx组件切换动画库示例详解
    目录来个介绍安装使用支持参数支持事件支持API支持的动画类型说明来个介绍 先奉上组件库的名称:transxgithub地址:github.com/tnfe/transxnpm参考:...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作