From 7e33a9c7945c8643095c4eaf008e57683e5dc90d Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期三, 20 三月 2024 10:36:51 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/main.js |   38 ++++++++++++++++++++++++++++++++++++++
 1 files changed, 38 insertions(+), 0 deletions(-)

diff --git a/src/main.js b/src/main.js
index 9ede569..7944e09 100644
--- a/src/main.js
+++ b/src/main.js
@@ -42,6 +42,9 @@
 import VScaleScreen from 'v-scale-screen'
 import dataV from '@jiaminghi/data-view'
 
+import gsap from 'gsap';
+import { formatNumber } from './utils/format';
+
 
 
 // 鍏ㄥ眬鏂规硶鎸傝浇
@@ -87,6 +90,41 @@
 
 Vue.config.productionTip = true
 
+
+// 鍏ㄥ眬鎸囦护
+Vue.directive('roll', {
+  inserted: (el, binding) => {
+    let target = {
+      count: 0
+    };
+    let finalNumber = el.innerText;
+    gsap.to(target, {
+      count: finalNumber,
+      duration: 1,
+      ease: "power2.out",
+      onUpdate: () => {
+        el.innerText = formatNumber(target.count.toFixed(0));
+      }
+    })
+
+  },
+  update: (el, binding) => {
+    let target = {
+      count: el.innerText
+    };
+    let finalNumber = el.getAttribute('value');
+    gsap.to(target, {
+      count: finalNumber,
+      duration: 1,
+      ease: "power2.out",
+      onUpdate: () => {
+        el.innerText = formatNumber(target.count.toFixed(0));
+      }
+    })
+  }
+})
+
+
 new Vue({
   el: '#app',
   router,

--
Gitblit v1.8.0