92 lines
2.1 KiB
JavaScript
92 lines
2.1 KiB
JavaScript
// 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)
|
|
},
|
|
|
|
|
|
}
|
|
}) |