React实现持续旋转的loading动画

实现一个图标的持续旋转效果,css就可以实现。

首先用keyframes定义一个旋转效果:

TypeScript 复制代码
import { keyframes } from '@mui/material';


const rotate = keyframes`
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
`;

这个效果就是旋转360度,接着我们把这个效果应用到具体的图标上,我们使用MUI的一个图标:

TypeScript 复制代码
import RefreshIcon from '@mui/icons-material/Refresh';

然后设置一个class样式:

TypeScript 复制代码
<RefreshIcon className="rotateIcon" fontSize="large" />

rotateIcon就是自定义的样式:

css 复制代码
'.rotateIcon': {
      animation: `${rotate} 0.8s linear infinite`,
 },

animation属性就是设置动画效果,具体参数里, 0.8s是旋转360度的时间,linear是指旋转过程是均匀的速度,infinite是永久,也就是持续不停的旋转。

相关推荐
MariaH几秒前
Sequelize模型初探
前端·后端
树豪1 分钟前
跟着官网学 Lynx 之 搭建 Lynx todo-list app
android·前端
蔓越莓3 分钟前
[Electron] app.quit 会对哪些资源进行清理?
前端·electron
Json_3 分钟前
使用uni-app框架 写电商商城前端h5静态网站模板项目-手机端-前端项目练习
前端·javascript·vue.js
海底火旺3 分钟前
JavaScript中的“先有鸡还是先有蛋”——变量提升的奥秘
前端·javascript
LaoZhangAI3 分钟前
【2025最新】Cherry Studio集成GPT-4o API完全指南:8大步骤实现高效智能绘画
前端
the_flash4 分钟前
JS拖动的原理
前端·javascript
_一条咸鱼_4 分钟前
Vue 教程路由模块之路由守卫深度剖析(六)
前端
菜心884 分钟前
Kotlin 之 when 表达式
前端
前端三叶草5 分钟前
静态分析:现代前端脚手架路由梳理
前端·前端框架