useAnimate
useAnimate
リアクティブな Web Animations API。
使用法
基本的な使用法
useAnimate 関数はアニメーションとその制御関数を返します。
<script setup lang="ts">
import { useAnimate } from '@vueuse/core'
import { useTemplateRef } from 'vue'
const el = useTemplateRef('el')
const {
isSupported,
animate,
// アクション
play,
pause,
reverse,
finish,
cancel,
// 状態
pending,
playState,
replaceState,
startTime,
currentTime,
timeline,
playbackRate,
} = useAnimate(el, { transform: 'rotate(360deg)' }, 1000)
</script>
<template>
<span ref="el" style="display:inline-block">useAnimate</span>
</template>
カスタムキーフレーム
キーフレームオブジェクトの配列、キーフレームオブジェクト、または ref を使用できます。詳細は Keyframe Formats を参照してください。
import { useAnimate } from '@vueuse/core'
const el = useTemplateRef<HTMLElement>('el')
// ---cut---
const keyframes = { transform: 'rotate(360deg)' }
// または
const keyframes = [
{ transform: 'rotate(0deg)' },
{ transform: 'rotate(360deg)' },
]
// または
const keyframes = ref([
{ clipPath: 'circle(20% at 0% 30%)' },
{ clipPath: 'circle(20% at 50% 80%)' },
{ clipPath: 'circle(20% at 100% 30%)' },
])
useAnimate(el, keyframes, 1000)
© 2019–PRESENT Anthony Fu https://github.com/antfu
※このページは Nuxt.js 公式ドキュメントの翻訳ページです。
公式ドキュメントの該当ページはこちら:
#