收藏
回答

扫码进入小程序后退出再进入后不执行lottie-miniprogram?

使用lottie-miniprogram,在真机上扫码进入小程序执行动画没问题,点击右上角按钮退出再扫码进去的话动画就卡住不动了,这个插件好鸡肋啊,官方能解决不

最后一次编辑于  2019-12-19
回答关注问题邀请回答
收藏

6 个回答

  • 臭卖鱼的
    臭卖鱼的
    2020-04-21

    代码调试的过程中发现,页面销毁时动画不会结束,也就是lottie不能自动销毁requestAnimationFrame回调里的动画,于是我手动收集了动画id,在页面onUnload时cancelAnimationFrame,以为这样问题能解决,结果不行,并且发现第二次进入页面时,requestAnimationFrame再也不触发了,于是手动收集上一次动画的回调传入,问题解决。

    代码片段:

    let frameFn = function () { };
    let rid = 0;
    let canvasDom = null;
    page({
      onReady () {
          wx.createSelectorQuery().select('#canvas').node((res) => {
            const canvas = res.node;
            const requestAnimationFrame = canvas.requestAnimationFrame;
            canvas.requestAnimationFrame = function () {
              frameFn = arguments[0];
              rid = requestAnimationFrame.apply(canvas, arguments);
              return rid;
            }
            // 页面第二次打开时动画默认不会开始,这里需要手动调用一次动画
            canvas.requestAnimationFrame(frameFn);
            canvasDom = canvas;
            lottie.setup(canvas);
            lottie.loadAnimation({
              autoplaytrue,
              looptrue,
              animationData: openCardAnimationData,
              rendererSettings: {
                context: canvas._ctx
              }
            });
          }).exec();
        },
      onUnload () {
        // 销毁页面时 关闭动画
        canvasDom.cancelAnimationFrame(rid);
      }
    })
    
    
    2020-04-21
    有用 2
    回复
  • yushare
    yushare
    2020-08-03

    2020-08-03,这个问题目测还存在,官方还在关注这个问题?

    2020-08-03
    有用
    回复
  • 梦醒了
    梦醒了
    2019-12-28

    麻烦问一下怎么解决

    2019-12-28
    有用
    回复 1
  • 2019-11-19

    ,体验版的入口

    2019-11-19
    有用
    回复
  • 疯狂的小辣椒
    疯狂的小辣椒
    2019-11-19

    你好,麻烦具体描述问题流程,提供出现问题的具体机型、微信版本号、系统版本号,以及能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html

    2019-11-19
    有用
    回复 36
    • 2019-11-19
      https://developers.weixin.qq.com/s/o1M5lZmO76cR,我是在体验版里发现的,微信版本7.0.8,几乎所有手机型号
      2019-11-19
      回复
    • 2019-11-19
      需要微信号才能有权限体验
      2019-11-19
      回复
    • 疯狂的小辣椒
      疯狂的小辣椒
      2019-11-19回复
      只有体验版复现么?代码片段能复现么?导入代码片段填写appid即可真机调试
      2019-11-19
      回复
    • 2019-11-19回复疯狂的小辣椒
      只有体验版能复现目前
      2019-11-19
      回复
    • 2019-11-19
      真机直接报错Uncaught (in promise) ReferenceError: NativeGlobal is not defined,体验版好歹能用,华为P30
      2019-11-19
      回复
    查看更多(31)
  • 王浩Hanks🇨🇳
    王浩Hanks🇨🇳
    2019-11-19

    谢邀,方便的话,上个代码片段吧

    2019-11-19
    有用
    回复 2
    • 2019-11-19
      https://developers.weixin.qq.com/s/o1M5lZmO76cR,我是在体验版里发现的,微信版本7.0.8,几乎所有手机型号,
      2019-11-19
      回复
    • 2019-11-19回复
      需要微信号才能有权限体验
      2019-11-19
      回复
登录 后发表内容
问题标签