Browse Source

down time

nieyuge 2 years ago
parent
commit
7691b279f6
2 changed files with 33 additions and 28 deletions
  1. 14 28
      pages/luckdraw.vue
  2. 19 0
      utils/help.js

+ 14 - 28
pages/luckdraw.vue

@@ -23,7 +23,7 @@
                             </div>
                         </div>
                         <div class="time">
-                            <span class="t">🕒 {{ validity }}</span>
+                            <span class="t">🕒 {{ validity || '00:00:00' }}</span>
                             <span class="w">🏆 {{ detail.postBizData.totalCount }} WINNERS</span>
                         </div>
                         <div class="box">
@@ -124,7 +124,7 @@
                                     </div>
                                 </div>
                                 <div class="time">
-                                    <span class="t">🕒 {{ validity }}</span>
+                                    <span class="t">🕒 {{ validity || '00:00:00' }}</span>
                                     <span class="w">🏆 {{ detail.postBizData.totalCount }} WINNERS</span>
                                 </div>
                                 <div class="box">
@@ -205,7 +205,7 @@
 import axios from 'axios'
 import Cookies from 'js-cookie'
 import { Toast } from 'vant';
-import { isBrowser, appType, appVersionCode } from '../utils/help.js'
+import { isBrowser, appType, appVersionCode, formatSecondsAsTime } from '../utils/help.js'
 import FontAmount from '../components/FontAmount.vue'
 
 var moment = require('moment');
@@ -292,6 +292,7 @@ export default {
             validity: '',
             receiveAmount: '0',
             title: 'DeNet Giveaway',
+            jumpUrl: jumpUrl,
 			metaTitle: 'DeNet: An Easy Web3 Tool For GIVEAWAY / AIRDROP',
         }
     },
@@ -411,35 +412,20 @@ export default {
 			return moment(time).format(_type)
 		},
         getValidity(end_time) {
-            end_time += 3000;
-            let _d1, _d2, _d3, _h, _m, _s
-			let timer = setInterval(() => {
-				let _time = new Date().getTime()
-				_d3 = end_time - _time
-				if (_d3 > 0) {
-					_d1 = moment(end_time)
-					_d2 = moment(_time)
-					_h = moment.duration(_d1.diff(_d2)).hours()
-					_m = moment.duration(_d1.diff(_d2)).minutes()
-					_s = moment.duration(_d1.diff(_d2)).seconds()
-					if (_h < 10) {
-						_h = '0' + _h
-					}
-					if (_m < 10) {
-						_m = '0' + _m
-					}
-					if (_s < 10) {
-						_s = '0' + _s
-					}
-					this.validity = `${_h}:${_m}:${_s}`
-				} else {
+            let timer = setInterval(() => {
+                let time = moment(new Date().getTime())
+                let endTime = moment(end_time + 5000)
+                let downTime = (endTime - time) || 0
+                if (downTime > 0) {
+                    this.validity = formatSecondsAsTime(downTime / 1000);
+                } else {
                     this.validity = `00:00:00`
                     this.getDetail(() => {
                         this.handleStatusPage()
                     })
-					clearInterval(timer)
-				}
-			}, 1000)
+                    clearInterval(timer)
+                }
+            }, 1000)
         },
         handleScroll(e) {
 			e = e.target

+ 19 - 0
utils/help.js

@@ -69,6 +69,25 @@ export function getBrowser() {
     return browser;
 }
 
+export function formatSecondsAsTime(secs) {
+    var hr = Math.floor(secs / 3600)
+    var min = Math.floor((secs - (hr * 3600)) / 60)
+    var sec = Math.floor(secs - (hr * 3600) - (min * 60))
+    var text
+    if (hr < 10) {
+        hr = "0" + hr
+    }
+    if (min < 10) {
+        min = "0" + min
+    }
+    if (sec < 10) {
+        sec = "0" + sec
+    }
+    text = hr + ':' + min + ':' + sec
+
+    return text
+}
+
 export const appVersionCode = 12;
 
 export const appType = 1;