2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Vue.js + webpack で 数字をドラムロールする

Posted at

#はじめに

数字をドラムロールするアニメーションはすでに、Vue.jsのドキュメント にあるけど、これをwebpackで使いたい。
あと、フォームに入力してカウントアップするやり方ではなく、ボタンを押したら10ずつ増えるという簡単なコードを書きました。

HTMLを書く

ボタンと数字を表示する

<div id="app">
  <button v-on:click="countup">
    10ずつカウントアップ
  </button>

  <p>{{ animatedNumber }}</p>
</div>

GSAPをインストール

GSAPのTweenLiteを使うため、GSAPをwebpackにインストールします。

npm install gsap

#コードを書きます。

import Vue from 'vue'
import TweenLite from 'gsap' // GSAPのTweenLiteを使います。

new Vue({
  el: '#app',
  data: {
    tweenedNumber: 0
  },
  computed: {
    animatedNumber: function() {
      return this.tweenedNumber.toFixed(0) //小数点を削除するため toFixedを使用
    }
  },
  methods: {
    countup: function() {
      const newValue = this.tweenedNumber + 10
      TweenLite.to(this.$data, 0.5, { tweenedNumber: newValue })
    }
  }
})

といった感じです。
これができると色々応用がきくと思います。
わたしは、検索結果の件数をリアルタイムで出す際にこれを使ってます。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?