min-project/component/open-ad/open-ad.js

92 lines
2.1 KiB
JavaScript
Raw Normal View History

2024-12-12 04:14:09 +00:00
// template/open-ad/open-ad.js
const app = getApp()
Component({
/**
* 组件的属性列表
*/
properties: {
openDate: {
type: Object,
observer: function (res) {
if (res && res.image && !this.data.load) {
this.data.load = true
wx.setStorage({
key: "openAdTimer",
data: Date.now()
})
this.downloadImg(res.image)
}
}
}
},
/**
* 组件的初始数据
*/
data: {
num: 5,
state: false,
timer: null,
url: "",
},
/**
* 组件的方法列表
*/
methods: {
downloadImg(url) {
wx.downloadFile({
url,
success: (res) => {
if (res.statusCode === 200) {
this.setData({
url: res.tempFilePath
})
this.startstart()
}
},
complete: () => {
this.data.load = false
}
})
},
startstart() {
app.globalData.offerkaipingadvertisementState = true
this.setData({
state: true,
})
this.data.timer = setInterval(() => {
this.setData({
num: this.data.num - 1
})
if (this.data.num <= 0) {
this.setData({
state: false,
})
clearInterval(this.data.timer)
}
}, 1000)
},
skip() {
let url = this.data.openDate['url']
if (url.indexOf('http') == 0) url = `/pages/webview/webview?url=${url}`
else url = url
wx.navigateTo({
url
})
},
jumpOver() {
this.setData({
state: false,
})
clearInterval(this.data.timer)
},
}
})