《SVG 动画开发实战》- 🤟 Vue + GSAP 实战

🤟 Vue + GSAP 实战

在学习过基础 SVG 动画原理后,若是结合咱们熟悉的技术栈使用岂不是更爽。GSAP 提供了 npm 安装包,下面咱们来在 Vue 项目中集成 GSAP。html

安装 GSAP

yarn add gsap -S
// or
npm i gsap -S

在 Vue 组件中使用 GSAP

假设咱们让一个矩形旋转 240 度,无限循环。前端

<template>
  <div id="app" class="app">
    <div class="box"></div>
  </div>
</template>

<script>
import { gsap } from 'gsap'

export default {
  name: 'App',
  mounted() {
    gsap.to('.box', {
      rotation: 240,
      repeat: -1
    })
  }
}
</script>

<style>
.box {
  padding: 0.25rem;
  background: lightgreen;
  width: 3rem;
  height: 3rem;
  margin-right: 0.25rem;
}
</style>

项目演示

Edit Vue + GSAP Demo1

付费功能

使用 npm 安装的 gsap 类库中,部分高级功能是须要加入 GreenSock Club (付费)才能使用的。好比以前介绍过的,描边动画会用到的 DrawSVG 、变形动画会用到 MorphSVG 等,这些只有加入 club ,成为会员才有使用权。不过 GreenSock 仍然提供了免费的试用版本。vue

chapter10-1

如何在项目中使用付费功能?

💡 免费试用版本付费插件使用的是在线 CDN

聪明的你可能想到了。既然提供了免费的试用版本 CDN,那么 CDN 资源咱们是能获取到的。好比咱们使用 Vue 完成一个 SVG 描边动画 例子 Hi There。git

获取 CDN

在 GreenSock 提供的 CodePen Demos 中,咱们能够免费体验 GreenSock Club 中的插件功能。查看 CodePen 使用的 JS 资源,会发现 DrawSVGPlugin 的身影,这个资源不是一个公开的放在 cloudflare CDN 服务地址上的资源,像是上传到 CodePen 上的资源。咱们能够打开这个 JS 连接,Copy 代码放在本地。github

chapter10-2

引入 DrawSVGPlugin

import { gsap } from 'gsap'
import DrawSVGPlugin from '@/plugins/DrawSVGPlugin'

gsap.registerPlugin(DrawSVGPlugin)

项目样例

Edit Vue + GSAP Hi There Demo

OK,到这咱们也能够在 Vue 中使用付费的插件了。可是,这种方法仍然是一个投机取巧的方法。咱们得不到 GreenSock 的功能更新,由于付费插件没有集成在 GSAP 类库中。npm

当 GSAP 升级了插件,咱们只能再去获取新的插件 CDN,不过做为我的练手项目,或者本地使用的项目。这到是个不错的方法。使用其余付费插件同理。segmentfault

warning
⚠️ 不建议在公开的项目中使用 GreenSock 付费插件,毕竟涉及版权问题。

🙏 感谢

感谢你阅读到了这里,到此本小册内容就完结了。但愿小册内容能让你对 SVG 有一个简单的了解。对 SVG 动画的表现形式有初步的概念。甚至能本身动手去实现你的动画 idea 又或者能把动画技术运用到项目中。bash

若是你是一个前端开发者,那么你有可能对《前端技术栈月刊》感兴趣,这是我整理维护的一份月刊。📖 聚焦前端,记录过去一个月看到的优秀的文章、工具,丰富前端技术栈。每个月28日更新。感兴趣的能够关注下。微信

最后推荐一本书给你们,Sarah Drasner《SVG Animations》,是这本书给予我关于本小册的不少有用的知识点。Sarah 是一个活跃于开源社区的程序媛,多次获奖的线下 CONF 演讲者,Vue 开源项目的核心成员,Netlify 的 Tech Leader。她的这本书以及在 CSS Tricks 上的文章确实让我学到很多有趣的知识。app

写于 2020.06.17,更新于 2020.12.15

关于

本文是《SVG 动画开发实战》 系列文章第十章。

Notion 版本

小册是在 Notion 上完成撰写的,因此我保留了 Notion 的分享版本,你也能够点击这里查看。

GitHub 版本

小册提供了 GitHub 版本的在线阅读体验,传送门

微信公众号版本

关注个人技术公号,一样也能够找到此小册系列,目前在更新中。。。

xiaoluoboding

相关文章
相关标签/搜索