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是永久,也就是持续不停的旋转。

相关推荐
Revolution613 分钟前
reactive 对象重新赋值后,表单为什么没有恢复默认值
前端·vue.js·面试
米饭同学i5 分钟前
微信小程序 input maxlength 遇上输入法拼音被截断?这是最完整的解决方案
前端
董员外7 分钟前
RAG 系统进化论(二):Naive RAG,检索增强生成的最小闭环
前端·人工智能·后端
半个落月8 分钟前
React useEffect 详解:执行时机、依赖数组与副作用清理
react.js
脾气有点小暴10 分钟前
ECharts 伪 3D 柱状图完整注释 + 实现原理说明
前端·3d·信息可视化·vue·echarts
掘金一周24 分钟前
看看大家每月的成本有多少 | 沸点周刊 7.30
前端·人工智能·后端
ji_shuke34 分钟前
从零深入:基于 Playwright + Pytest + Allure 的企业级 Web 端到端自动化测试框架实战
前端·自动化测试·docker·jenkins·pytest·allure·playwright
tntxia44 分钟前
React 的常用 Hook
react.js
陆枫Larry1 小时前
用 CSS Mask + background-color 给图标「换色」
前端
幼儿园技术家2 小时前
原来不用发版也可以做到版本更新
前端·js or ts