|
@@ -2,93 +2,180 @@ import {
|
|
|
BrowseRecordAdd
|
|
|
} from '@/api/applist.js'
|
|
|
import sha256 from 'crypto-js/sha256'
|
|
|
-
|
|
|
-//防抖函数
|
|
|
-export function debounce(func, fnThis, wait) {
|
|
|
- var timer;
|
|
|
- return () => {
|
|
|
- timer && clearTimeout(timer);
|
|
|
- timer = setTimeout(() => {
|
|
|
- func.call(fnThis)
|
|
|
- timer = null
|
|
|
- }, wait);
|
|
|
- };
|
|
|
-}
|
|
|
-
|
|
|
-//节流函数
|
|
|
-export function throttling(func, fnThis, wait) {
|
|
|
- var timer;
|
|
|
- return () => {
|
|
|
- clearTimeout(timer);
|
|
|
- timer = setTimeout(func.bind(fnThis), wait);
|
|
|
- };
|
|
|
-}
|
|
|
+import Toast from '@/wxcomponents/vant/toast/toast';
|
|
|
|
|
|
let goMiniAppFlag = false
|
|
|
-//跳转小程序
|
|
|
-export function goMiniApp(data, item) {
|
|
|
-
|
|
|
- if (goMiniAppFlag) return
|
|
|
- goMiniAppFlag = true
|
|
|
-
|
|
|
- let myData = JSON.parse(data)
|
|
|
|
|
|
- wx.navigateToMiniProgram({
|
|
|
- ...myData,
|
|
|
- success: (res) => {
|
|
|
- // 打开成功
|
|
|
- goMiniAppFlag = false
|
|
|
- item && BrowseRecordAdd(item.id)
|
|
|
- },
|
|
|
- fail: () => {
|
|
|
- goMiniAppFlag = false
|
|
|
+const utils = {
|
|
|
+ //激励广告唤起函数
|
|
|
+ incentiveAd(){
|
|
|
+ // 在页面中定义激励视频广告
|
|
|
+ let videoAd = null
|
|
|
+
|
|
|
+ // 在页面onLoad回调事件中创建激励视频广告实例
|
|
|
+ if (wx.createRewardedVideoAd) {
|
|
|
+ videoAd = wx.createRewardedVideoAd({
|
|
|
+ adUnitId: 'adunit-5be2b5bf54eae38e'
|
|
|
+ })
|
|
|
+ videoAd.onLoad(() => {})
|
|
|
+ videoAd.onError((err) => {})
|
|
|
+ videoAd.onClose((res) => {})
|
|
|
}
|
|
|
- })
|
|
|
-}
|
|
|
-
|
|
|
-//跳转页面
|
|
|
-export function goPage(url, type, data) {
|
|
|
- if (type == 'reLaunch') {
|
|
|
- uni.reLaunch({
|
|
|
- url
|
|
|
- });
|
|
|
- return
|
|
|
- }
|
|
|
- if (type == 'redirectTo') {
|
|
|
- uni.redirectTo({
|
|
|
- url
|
|
|
+
|
|
|
+ // 用户触发广告后,显示激励视频广告
|
|
|
+ if (videoAd) {
|
|
|
+ videoAd.show().catch(() => {
|
|
|
+ // 失败重试
|
|
|
+ videoAd.load()
|
|
|
+ .then(() => videoAd.show())
|
|
|
+ .catch(err => {
|
|
|
+ console.log('激励视频 广告显示失败')
|
|
|
+ })
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //vant通知组件调用函数
|
|
|
+ Toast,
|
|
|
+ //防抖函数
|
|
|
+ debounce(func, fnThis, wait) {
|
|
|
+ var timer;
|
|
|
+ return () => {
|
|
|
+ timer && clearTimeout(timer);
|
|
|
+ timer = setTimeout(() => {
|
|
|
+ func.call(fnThis)
|
|
|
+ timer = null
|
|
|
+ }, wait);
|
|
|
+ };
|
|
|
+ },
|
|
|
+ //节流函数
|
|
|
+ throttling(func, fnThis, wait) {
|
|
|
+ var timer;
|
|
|
+ return () => {
|
|
|
+ clearTimeout(timer);
|
|
|
+ timer = setTimeout(func.bind(fnThis), wait);
|
|
|
+ };
|
|
|
+ },
|
|
|
+ //跳转小程序
|
|
|
+ goMiniApp(data, item) {
|
|
|
+
|
|
|
+ if (goMiniAppFlag) return
|
|
|
+ goMiniAppFlag = true
|
|
|
+
|
|
|
+ let myData = JSON.parse(data)
|
|
|
+
|
|
|
+ wx.navigateToMiniProgram({
|
|
|
+ ...myData,
|
|
|
+ success: (res) => {
|
|
|
+ // 打开成功
|
|
|
+ goMiniAppFlag = false
|
|
|
+ item && BrowseRecordAdd(item.id)
|
|
|
+ },
|
|
|
+ fail: () => {
|
|
|
+ goMiniAppFlag = false
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //跳转页面
|
|
|
+ goPage(url, type, data) {
|
|
|
+ if (type == 'reLaunch') {
|
|
|
+ uni.reLaunch({
|
|
|
+ url
|
|
|
+ });
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (type == 'redirectTo') {
|
|
|
+ uni.redirectTo({
|
|
|
+ url
|
|
|
+ });
|
|
|
+ return
|
|
|
+ }
|
|
|
+ uni.navigateTo({
|
|
|
+ url,
|
|
|
+ success: function(res) {
|
|
|
+ // 通过eventChannel向被打开页面传送数据
|
|
|
+ res.eventChannel.emit('passParameters', data)
|
|
|
+ }
|
|
|
});
|
|
|
- return
|
|
|
- }
|
|
|
- uni.navigateTo({
|
|
|
- url,
|
|
|
- success: function(res) {
|
|
|
- // 通过eventChannel向被打开页面传送数据
|
|
|
- res.eventChannel.emit('passParameters', data)
|
|
|
+ },
|
|
|
+ //页面接受参数
|
|
|
+ goPageGetData() {
|
|
|
+ return new Promise((res) => {
|
|
|
+ const eventChannel = this.getOpenerEventChannel()
|
|
|
+ eventChannel.on('passParameters', function(data) {
|
|
|
+ res(data)
|
|
|
+ })
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //根据类型跳转
|
|
|
+ clickJumpType(item) {
|
|
|
+ if (item.jumpUrlType == 'goMiniApp') {
|
|
|
+ utils.goMiniApp(item.jumpUrl)
|
|
|
}
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-//接受参数
|
|
|
-export function goPageGetData() {
|
|
|
- return new Promise((res) => {
|
|
|
- const eventChannel = this.getOpenerEventChannel()
|
|
|
- eventChannel.on('passParameters', function(data) {
|
|
|
- res(data)
|
|
|
+ if (item.jumpUrlType == 'goPage') {
|
|
|
+ utils.goPage(item.jumpUrl)
|
|
|
+ }
|
|
|
+ if (item.jumpUrlType == 'goWebView') {
|
|
|
+ utils.goPage(`/pages/webview/webview?src=${item.jumpUrl}`)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //微信支付调起支付
|
|
|
+ wxPay(data) {
|
|
|
+ wx.requestPayment({
|
|
|
+ ...data
|
|
|
})
|
|
|
- })
|
|
|
-}
|
|
|
-
|
|
|
-//根据类型跳转
|
|
|
-export function clickJumpType(item) {
|
|
|
- if (item.jumpUrlType == 'goMiniApp') {
|
|
|
- goMiniApp(item.jumpUrl)
|
|
|
- }
|
|
|
- if (item.jumpUrlType == 'goPage') {
|
|
|
- goPage(item.jumpUrl)
|
|
|
- }
|
|
|
- if (item.jumpUrlType == 'goWebView') {
|
|
|
- goPage(`/pages/webview/webview?src=${item.jumpUrl}`)
|
|
|
+ },
|
|
|
+ //返回星期几
|
|
|
+ getUTCDay(date) {
|
|
|
+ let UTCDay = new Date(date).getUTCDay()
|
|
|
+ switch (UTCDay) {
|
|
|
+ case 0:
|
|
|
+ return '周天';
|
|
|
+ case 1:
|
|
|
+ return '周一';
|
|
|
+ case 2:
|
|
|
+ return '周二';
|
|
|
+ case 3:
|
|
|
+ return '周三';
|
|
|
+ case 4:
|
|
|
+ return '周四';
|
|
|
+ case 5:
|
|
|
+ return '周五';
|
|
|
+ case 6:
|
|
|
+ return '周六';
|
|
|
+ }
|
|
|
+ },
|
|
|
+ //返回今天明天后天周几
|
|
|
+ getDay(date) {
|
|
|
+ let UTCDay = new Date(date).getUTCDay()
|
|
|
+ let jetLag = new Date(date).getTime() - new Date().getTime()
|
|
|
+ let dayDif = jetLag / (1000 * 60 * 60 * 24)
|
|
|
+ if (dayDif < 2) {
|
|
|
+ if (dayDif < 0) {
|
|
|
+ return '今天'
|
|
|
+ }
|
|
|
+ if (dayDif < 1) {
|
|
|
+ return '明天'
|
|
|
+ }
|
|
|
+ if (dayDif < 2) {
|
|
|
+ return '后天'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ switch (UTCDay) {
|
|
|
+ case 0:
|
|
|
+ return '周天';
|
|
|
+ case 1:
|
|
|
+ return '周一';
|
|
|
+ case 2:
|
|
|
+ return '周二';
|
|
|
+ case 3:
|
|
|
+ return '周三';
|
|
|
+ case 4:
|
|
|
+ return '周四';
|
|
|
+ case 5:
|
|
|
+ return '周五';
|
|
|
+ case 6:
|
|
|
+ return '周六';
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -125,79 +212,4 @@ function base64_encode(str) {
|
|
|
return string
|
|
|
}
|
|
|
|
|
|
-
|
|
|
-//微信支付调起支付
|
|
|
-export function wxPay(data) {
|
|
|
-
|
|
|
- wx.requestPayment({
|
|
|
- ...data
|
|
|
- })
|
|
|
-
|
|
|
-}
|
|
|
-
|
|
|
-//返回星期几
|
|
|
-export function getUTCDay(date) {
|
|
|
- let UTCDay = new Date(date).getUTCDay()
|
|
|
- switch (UTCDay) {
|
|
|
- case 0:
|
|
|
- return '周天';
|
|
|
- case 1:
|
|
|
- return '周一';
|
|
|
- case 2:
|
|
|
- return '周二';
|
|
|
- case 3:
|
|
|
- return '周三';
|
|
|
- case 4:
|
|
|
- return '周四';
|
|
|
- case 5:
|
|
|
- return '周五';
|
|
|
- case 6:
|
|
|
- return '周六';
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
-//返回今天明天后天周几
|
|
|
-export function getDay(date) {
|
|
|
- let UTCDay = new Date(date).getUTCDay()
|
|
|
- let jetLag = new Date(date).getTime() - new Date().getTime()
|
|
|
- let dayDif = jetLag / (1000 * 60 * 60 * 24)
|
|
|
- if (dayDif < 2) {
|
|
|
- if (dayDif < 0) {
|
|
|
- return '今天'
|
|
|
- }
|
|
|
- if (dayDif < 1) {
|
|
|
- return '明天'
|
|
|
- }
|
|
|
- if (dayDif < 2) {
|
|
|
- return '后天'
|
|
|
- }
|
|
|
- }
|
|
|
- switch (UTCDay) {
|
|
|
- case 0:
|
|
|
- return '周天';
|
|
|
- case 1:
|
|
|
- return '周一';
|
|
|
- case 2:
|
|
|
- return '周二';
|
|
|
- case 3:
|
|
|
- return '周三';
|
|
|
- case 4:
|
|
|
- return '周四';
|
|
|
- case 5:
|
|
|
- return '周五';
|
|
|
- case 6:
|
|
|
- return '周六';
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
-export default {
|
|
|
- goPageGetData,
|
|
|
- clickJumpType,
|
|
|
- debounce,
|
|
|
- throttling,
|
|
|
- goMiniApp,
|
|
|
- goPage,
|
|
|
- wxPay,
|
|
|
- getUTCDay,
|
|
|
- getDay
|
|
|
-}
|
|
|
+export default utils
|