简介

lottie是Airbnb公司开发的一款用于移动端动效的设计库。
适用于Android、iOS、macOS、react-native、vue、html等平台和框架。
支付宝已经全面使用这个工具以实现大规模级别的动效管理和运营。
微信小程序使用lotttie实现动效可方便开发者节省大量的动效实现时间,设计师也可以方便的通过AE的动效插件实现更复杂的动效效果。

基本原理

设计师使用AE导出动效元素的运动路径,格式为json,

微信开发者官网对lottie的实现介绍

https://developers.weixin.qq.com/miniprogram/dev/extended/utils/lottie.html

实现

可参考该代码片段:https://developers.weixin.qq.com/s/2TYvm9mJ75bF。
大致步骤如下:
通过 npm 安装:

  1. npm install --save lottie-miniprogram

传入 canvas 对象用于适配

  1. <canvas id="canvas" type="2d"></canvas>
  2. import lottie from 'lottie-miniprogram'
  3. Page({
  4. onReady() {
  5. wx.createSelectorQuery().select('#canvas').node(res => {
  6. const canvas = res.node
  7. lottie.setup(canvas)
  8. }).exec()
  9. }
  10. })

使用 lottie 接口

  1. lottie.setup(canvas)
  2. lottie.loadAnimation({
  3. ...
  4. })
  5. 接口

动效交互效果案例