自动过渡动画 - AutoAnimate 库

2024-05-05 12:12

本文主要是介绍自动过渡动画 - AutoAnimate 库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文给大家介绍一个一行代码添加过渡动画的库。

介绍

AutoAnimate是一个零配置、投入式动画实用程序,可以为您的Web应用程序添加平滑的过渡。您可以将其与React、Solid、Vue、Svelte或任何其他JavaScript应用程序一起使用。

官方地址: https://auto-animate.formkit.com/

github 地址: https://github.com/formkit/auto-animate

简而言之,AutoAnimate 是一个能够一行代码直接添加过度动画的库,无需再去了解繁杂的 css 属性,以及动画相关的知识。

在一些快速验证的场景中尤其适用。

本文主要介绍在 vue 中的使用方式。

安装

安装依赖

yarn add @formkit/auto-animate

注册指令

import { createApp } from 'vue'
import { autoAnimatePlugin } from '@formkit/auto-animate/vue'
import App from 'App.vue'createApp(App).use(autoAnimatePlugin).mount('#app')

当然,你也可以直接引入使用

import { vAutoAnimate } from '@formkit/auto-animate'

基本使用

插件注册之后即可在你需要动态变化的元素(主要是循环中的元素)的父元素中使用v-auto-animate 即完成,非常地简单,以下为官方示例:

<script setup>
import { ref } from 'vue'
const items = ref(["😏","😐","😑","😒","😕", ... ])
function removeItem(toRemove) {items.value = items.value.filter((item) => item !== toRemove)
}
</script><template><h5>Click emojis to remove them.</h5><ul v-auto-animate><liv-for="item in items":key="item"@click="removeItem(item)">{{ item }}</li></ul>
</template>

运行可得以下结果:

在这里插入图片描述
一个循环列表删除单条的动画就自动加上去了,无需再用其他的什么操作

进阶使用

AutoAnimate 不仅对普通列表生效;

同时也对卡片、横纵坐标盒子,甚至交换位置的列表项生效

例如如下动画:(来自官方)
在这里插入图片描述
其核心代码与普通使用方法一致

 <div class="boxes" v-auto-animate="{ duration: 500 }">

替换自带的动画

如果对它自带的动画和过度方式不满意,也可以将它替换掉,只需要引入AutoAnimate 方法,并修改其内容重新定义 add、remove、remain的动画帧即可。

import autoAnimate, { getTransitionSizes } from '@formkit/auto-animate'autoAnimate(parentElement, (el, action, oldCoords, newCoords) => {let keyframes// supply a different set of keyframes for each actionif (action === 'add') {keyframes = [{ transform: 'scale(0)', opacity: 0 },{ transform: 'scale(1.15)', opacity: 1, offset: 0.75 },{ transform: 'scale(1)', opacity: 1 }]}if (action === 'remove') {// ...}if (action === 'remain') {// ...}return new KeyframeEffect(el, keyframes, { duration: 600, easing: 'ease-out' })
}))

总结

AutoAnimate 实现了一行代码自动添加过渡动画,时间原因未对其原理进行分析,但看其替换默认动画的实现方式,应当在使用 js 根据情况在修改相关元素的属性。

对于快速验证的小应用,尤其涉及到循环列表或者是横纵坐标循环 box 的,甚至交换位置等交互的,这无疑是一个极好的选择。

不仅如此,对于后端人士,不得不写一点前端的时候,希望快速搞一点动效,以免显得生硬,但又对 css 和过渡动画了解没那么深入,这就更是一个不错的选择了。

这篇关于自动过渡动画 - AutoAnimate 库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/961688

相关文章

Go Mongox轻松实现MongoDB的时间字段自动填充

《GoMongox轻松实现MongoDB的时间字段自动填充》这篇文章主要为大家详细介绍了Go语言如何使用mongox库,在插入和更新数据时自动填充时间字段,从而提升开发效率并减少重复代码,需要的可以... 目录前言时间字段填充规则Mongox 的安装使用 Mongox 进行插入操作使用 Mongox 进行更

C语言中自动与强制转换全解析

《C语言中自动与强制转换全解析》在编写C程序时,类型转换是确保数据正确性和一致性的关键环节,无论是隐式转换还是显式转换,都各有特点和应用场景,本文将详细探讨C语言中的类型转换机制,帮助您更好地理解并在... 目录类型转换的重要性自动类型转换(隐式转换)强制类型转换(显式转换)常见错误与注意事项总结与建议类型

IDEA如何让控制台自动换行

《IDEA如何让控制台自动换行》本文介绍了如何在IDEA中设置控制台自动换行,具体步骤为:File-Settings-Editor-General-Console,然后勾选Usesoftwrapsin... 目录IDEA如何让控制台自http://www.chinasem.cn动换行操作流http://www

vscode保存代码时自动eslint格式化图文教程

《vscode保存代码时自动eslint格式化图文教程》:本文主要介绍vscode保存代码时自动eslint格式化的相关资料,包括打开设置文件并复制特定内容,文中通过代码介绍的非常详细,需要的朋友... 目录1、点击设置2、选择远程--->点击右上角打开设置3、会弹出settings.json文件,将以下内

Python脚本实现自动删除C盘临时文件夹

《Python脚本实现自动删除C盘临时文件夹》在日常使用电脑的过程中,临时文件夹往往会积累大量的无用数据,占用宝贵的磁盘空间,下面我们就来看看Python如何通过脚本实现自动删除C盘临时文件夹吧... 目录一、准备工作二、python脚本编写三、脚本解析四、运行脚本五、案例演示六、注意事项七、总结在日常使用

SpringBoot项目启动后自动加载系统配置的多种实现方式

《SpringBoot项目启动后自动加载系统配置的多种实现方式》:本文主要介绍SpringBoot项目启动后自动加载系统配置的多种实现方式,并通过代码示例讲解的非常详细,对大家的学习或工作有一定的... 目录1. 使用 CommandLineRunner实现方式:2. 使用 ApplicationRunne

Springboot的ThreadPoolTaskScheduler线程池轻松搞定15分钟不操作自动取消订单

《Springboot的ThreadPoolTaskScheduler线程池轻松搞定15分钟不操作自动取消订单》:本文主要介绍Springboot的ThreadPoolTaskScheduler线... 目录ThreadPoolTaskScheduler线程池实现15分钟不操作自动取消订单概要1,创建订单后

最好用的WPF加载动画功能

《最好用的WPF加载动画功能》当开发应用程序时,提供良好的用户体验(UX)是至关重要的,加载动画作为一种有效的沟通工具,它不仅能告知用户系统正在工作,还能够通过视觉上的吸引力来增强整体用户体验,本文给... 目录前言需求分析高级用法综合案例总结最后前言当开发应用程序时,提供良好的用户体验(UX)是至关重要

python实现自动登录12306自动抢票功能

《python实现自动登录12306自动抢票功能》随着互联网技术的发展,越来越多的人选择通过网络平台购票,特别是在中国,12306作为官方火车票预订平台,承担了巨大的访问量,对于热门线路或者节假日出行... 目录一、遇到的问题?二、改进三、进阶–展望总结一、遇到的问题?1.url-正确的表头:就是首先ur

基于Python实现PDF动画翻页效果的阅读器

《基于Python实现PDF动画翻页效果的阅读器》在这篇博客中,我们将深入分析一个基于wxPython实现的PDF阅读器程序,该程序支持加载PDF文件并显示页面内容,同时支持页面切换动画效果,文中有详... 目录全部代码代码结构初始化 UI 界面加载 PDF 文件显示 PDF 页面页面切换动画运行效果总结主