svga动画安装和使用

1.npm安装

npm install svga --save

   yarn安装

yarn add svga

2.在你的Vue组件文件中引入Parser和Player:

import { Parser, Player } from 'svga';

3.svga基本使用(这里还判断了svga频繁点击会出现重叠效果的情况)

<template>
  <div>
    <canvas style="width: 250px; height: 250px;" id="svgaT"></canvas><br>
  </div>
</template>
<script>
import { Parser, Player } from 'svga'

export default {
  data() {
    return {
      url: 'https://photo.storage.vvvchat.com/assets/zj/op_1686118482.svga',
      svgaplayer: null,
      svgaparser: null,
      Booleansvga: false, //判断当前是否正在加载中
    }
  },
  created() {
    this.render()
  },
  methods: {
    render() {
      //如果正再加载svga的话 直接return
      if (this.Booleansvga) {
        return
      }
      this.Booleansvga = true //把此变量变为true 防止动画还没有加载完毕 又要新的动画加载
      let svgaURL = this.url //把第一次加载的url地址赋值给svgaURL
      this.svgaparser = new Parser()
      //这里动画加载地址
      this.svgaparser.load(this.url).then((svga) => {
        this.Booleansvga = false //加载完之后 把变量变为false
        if (svgaURL !== this.url) { //判断第一次播放svga地址是否等于当前选择的svga地址 
          this.render()
          return
        }
        this.svgaplayer = new Player(document.getElementById('svgaT'))
        this.svgaplayer.mount(svga)
        this.svgaplayer.start() //开始播放动画
      }).catch(err => {
        this.Booleansvga = false //加载完之后 把变量变为false
        console.log(err);
      })
    },
  }
}
</script>

4.停止播放或者清除svga动画

      this.svgaplayer?.stop();  //停止播放
      this.svgaplayer?.clear(); //清楚当前svga动画

5.结束
6.就这么简单

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值