{T}

用react-spring做弹簧动画

学习目标

  • 理解并掌握 用react-spring做弹簧动画 的核心原理与工程实践

总结

我们学了用 react-spring 来做动画。

react-spring 主打的是弹簧动画,就是类似弹簧那种回弹效果。

只要指定 mass(质量)、tension(张力)、friction(摩擦力)就可以了。

  • mass 质量:决定回弹惯性,mass 越大,回弹的距离和次数越多。

  • tension 张力:弹簧松紧程度,弹簧越紧,回弹速度越快。

  • friction:摩擦力: 可以抵消质量和张力的效果

弹簧动画不需要指定时间。

当然,你也可以指定 duration 来做那种普通动画。

react-spring 有不少 api,分别用于单个、多个元素的动画:

  • useSpringValue:指定单个属性的变化。
  • useSpring:指定多个属性的变化
  • useSprings:指定多个元素的多个属性的变化,动画并行执行
  • useTrial:指定多个元素的多个属性的变化,动画依次执行
  • useSpringRef:用来拿到每个动画的 ref,可以用来控制动画的开始、暂停等
  • useChain:串行执行多个动画,每个动画可以指定不同的开始时间

掌握了这些,就足够基于 react-spring 做动画了。

继续阅读