diff options
| author | syuilo <Syuilotan@yahoo.co.jp> | 2022-12-31 20:36:49 +0900 |
|---|---|---|
| committer | syuilo <Syuilotan@yahoo.co.jp> | 2022-12-31 20:36:49 +0900 |
| commit | b64daa5a58c9c458d7e8e60258d844ccabd4e4aa (patch) | |
| tree | 2dfa2954d28511e96f49dc5e7ce871038a129286 /packages/frontend/src/components/MkNumber.vue | |
| parent | :art: (diff) | |
| download | sharkey-b64daa5a58c9c458d7e8e60258d844ccabd4e4aa.tar.gz sharkey-b64daa5a58c9c458d7e8e60258d844ccabd4e4aa.tar.bz2 sharkey-b64daa5a58c9c458d7e8e60258d844ccabd4e4aa.zip | |
:art:
Diffstat (limited to 'packages/frontend/src/components/MkNumber.vue')
| -rw-r--r-- | packages/frontend/src/components/MkNumber.vue | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/packages/frontend/src/components/MkNumber.vue b/packages/frontend/src/components/MkNumber.vue new file mode 100644 index 0000000000..f54ec764f9 --- /dev/null +++ b/packages/frontend/src/components/MkNumber.vue @@ -0,0 +1,23 @@ +<template> +<span>{{ number(tweened.number.toFixed(0)) }}</span> +</template> + +<script lang="ts" setup> +import { ref, reactive, watch } from 'vue'; +import gsap from 'gsap'; +import number from '@/filters/number'; + +const props = defineProps<{ + value: number; +}>(); + +const tweened = reactive({ + number: 0, +}); + +watch(() => props.value, (n) => { + gsap.to(tweened, { duration: 0.5, number: Number(n) || 0 }); +}, { + immediate: true, +}); +</script> |