SuperAPI AI 工具集

react-spring

前端与建站

查看项目

更新于 10-15 14:49

技能介绍

用途

React Spring Animation Principles 是一个面向 React 开发者的动画实现技能,目标是在使用 React Spring 的弹簧物理动画系统时,落地迪士尼十二项动画原则。资料以代码片段的方式,逐条给出每项原则在 React Spring 中的写法,适合需要为界面元素、角色或交互组件添加自然、有物理感的动效的场景。

主要能力

资料覆盖的十二项动画原则及对应实现方式如下:

  1. 挤压与拉伸(Squash and Stretch):通过 useSpring 控制 scaleX、scaleY,并配合 tension、friction 配置。
  2. 预备动作(Anticipation):使用 api.start 先做反向蓄力,再执行主动作。
  3. 舞台调度(Staging):用多个 useSpring 分别控制背景模糊、透明度与主体缩放、层级。
  4. 逐帧与关键帧(Straight Ahead / Pose to Pose):在 useSpring 的 to 中传入多个关键位置数组。
  5. 跟随与重叠动作(Follow Through and Overlapping Action):为身体、头发、披风分别设置弹簧并加入 delay 与不同 friction。
  6. 慢入慢出(Slow In and Slow Out):通过 tension 与 friction 的组合控制加减速,高张力低摩擦偏快,低张力高摩擦偏慢。
  7. 弧线(Arc):在 to 中使用 async/await 依次经过多个坐标点形成弧线路径。
  8. 次要动作(Secondary Action):主按钮缩放之外,为图标添加延迟旋转。
  9. 时间节奏(Timing):定义 fast、normal、slow、wobbly 等配置,或使用 config.gentle、config.stiff、config.slow 预设。
  10. 夸张(Exaggeration):放大 scale、rotate 并使用低 friction 制造过冲。
  11. 立体造型(Solid Drawing):通过 transform 的 perspective、rotateX、rotateY 构建立体感。
  12. 吸引力(Appeal):悬停时缩放卡片并改变阴影,配合 config.gentle。

此外,资料还展示了 useTrail 用于错峰(stagger)动画的写法。

使用方式

资料以代码示例为主,未提供安装命令或完整项目配置。核心 API 包括:useSpring(单个动画)、useSprings(多个弹簧)、useTrail(错峰动画)、useChain(序列动画)、useTransition(挂载/卸载动画)。物理参数包括 tension、friction、mass、velocity;配置预设包括 gentle、stiff、slow、molasses。

适用场景

适合在 React 项目中实现具有物理感的界面动效,例如按钮反馈、卡片悬停、列表错峰入场、元素挂载与卸载过渡,以及需要遵循经典动画原则的角色或图形动画。

限制

资料未说明所支持的 React 或 React Spring 版本、浏览器兼容性、性能表现、包体积、收费或许可信息,也未提供安装步骤与完整示例工程,这些内容暂未提供。