vue3 wow.js动画插件重复触发动画

vue yekong

vue3 可视化数据大屏开发中,为了让大屏效果更加酷炫,会给大屏增加很多动画,这里也增加wow.js来实现动画效果,但是在实际项目开发中会出现重复触发动画的效果,页面加载后会触发一次动画,请求完接口后又触发了一次动画,这就不是很友好了。

问题

于是经过一段排查,发现只有特定组件存在,并且接口响应稍微慢一点就会触发动画,再仔细查看,是因为页面初始化了动画组件,子组件也初始化了动画组件,当接口响应慢的时候,就会重复触发。

解决办法

只在页面中初始化一次即可,其他组件不再初始化,就不会重复触发了。

import WOW from "wow.js";
mounted() {
    var wow = new WOW({
      boxClass: "wow",
      animateClass: "animated",
      offset: 0,
    });
    wow.init();
},
喜欢