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

相关推荐
David凉宸2 分钟前
vue2与vue3的差异在哪里?
前端·javascript·vue.js
笔画人生7 分钟前
Cursor + 蓝耘API:用自然语言完成全栈项目开发
前端·后端
AC赳赳老秦22 分钟前
外文文献精读:DeepSeek翻译并解析顶会论文核心技术要点
前端·flutter·zookeeper·自动化·rabbitmq·prometheus·deepseek
小宇的天下29 分钟前
Calibre 3Dstack --每日一个命令day18【floating_trace】(3-18)
服务器·前端·数据库
毕设源码-钟学长36 分钟前
【开题答辩全过程】以 基于web技术的酒店信息管理系统设计与实现-为例,包含答辩的问题和答案
前端
css趣多多43 分钟前
this.$watch
前端·javascript·vue.js
●VON1 小时前
React Native for OpenHarmony:ScrollView 事件流、布局行为与性能优化深度剖析
学习·react native·react.js·性能优化·openharmony
干前端1 小时前
Vue3虚拟滚动列表组件进阶:不定高度及原理分析!!!
前端·前端组件
雨季6661 小时前
Flutter 三端应用实战:OpenHarmony “极简文本行数统计器”
开发语言·前端·flutter·ui·交互
2601_949593651 小时前
高级进阶 React Native 鸿蒙跨平台开发:LinearGradient 玻璃拟态卡片
react native·react.js·harmonyos