112 lines
2.5 KiB
Vue
112 lines
2.5 KiB
Vue
<template>
|
||
<view class="content">
|
||
<view class="container">
|
||
<view class="my-header">
|
||
<view class="my-icons" @click="goBack"> <uni-icons type="left" size="16"></uni-icons> </view>
|
||
<view class="my-text">支付完成</view>
|
||
<view class="my-icons"></view>
|
||
</view>
|
||
|
||
<view style="text-align: center;margin-top: 20px;">
|
||
<view style="margin: 0 auto;">
|
||
<image style="width: 60%;" src="@/static/imgs/paymentSuccess.png"></image>
|
||
</view>
|
||
<view style="margin: 20px auto;font-size: 20px;color: #30a1ff;">支付成功</view>
|
||
<view style="color: gray">
|
||
您已完成支付<br/>
|
||
谢谢您对来个油惠的支持!
|
||
</view>
|
||
<view v-if="orderNo" @click="goOrderInfo" style="border: solid 1px #30a1ff;border-radius: 50px;margin: 20px auto;width: 150px;
|
||
height: 40px;line-height: 40px;color: #30a1ff;">{{timestamp}}s后去评价</view>
|
||
<view v-else @click="goBack" style="border: solid 1px #30a1ff;border-radius: 50px;margin: 20px auto;width: 150px;
|
||
height: 40px;line-height: 40px;color: #30a1ff;">{{timestamp}}s后返回首页</view>
|
||
</view>
|
||
</view>
|
||
</view>
|
||
</template>
|
||
|
||
<script>
|
||
export default {
|
||
data() {
|
||
return {
|
||
timestamp:3,
|
||
timer:{},
|
||
orderNo:"",
|
||
}
|
||
},
|
||
onLoad(e) {
|
||
if (e.orderNo){
|
||
this.orderNo = e.orderNo
|
||
}
|
||
this.countdown()
|
||
},
|
||
methods: {
|
||
goOrderInfo(){
|
||
clearInterval(this.timer)
|
||
uni.navigateTo({
|
||
url: '/pagesMy/details/details?orderNo=' + this.orderNo,
|
||
})
|
||
},
|
||
// 倒计时刷新
|
||
countdown(){
|
||
let _this = this
|
||
this.timer = setInterval(() => {
|
||
// countdown减1
|
||
_this.timestamp--;
|
||
// 如果倒计时为0,清除定时器
|
||
if(_this.timestamp === 0) {
|
||
if (_this.orderNo){
|
||
_this.goOrderInfo()
|
||
}else{
|
||
_this.goBack()
|
||
}
|
||
|
||
clearInterval(this.timer)
|
||
_this.timestamp = 3
|
||
}
|
||
}, 1000);
|
||
},
|
||
goBack() {
|
||
clearInterval(this.timer)
|
||
uni.reLaunch({
|
||
url: '/pages/index/index'
|
||
})
|
||
}
|
||
}
|
||
|
||
}
|
||
</script>
|
||
|
||
<style scoped lang="scss">
|
||
.content {
|
||
background: white;
|
||
}
|
||
|
||
.container {
|
||
width: 100%;
|
||
height: 100vh;
|
||
box-sizing: border-box;
|
||
padding-top: 88px;
|
||
}
|
||
|
||
.my-header {
|
||
width: 100%;
|
||
height: 88px;
|
||
background: #ffffff;
|
||
display: flex;
|
||
align-items: center;
|
||
justify-content: space-between;
|
||
color: #000;
|
||
box-sizing: border-box;
|
||
padding: 0px 15px;
|
||
padding-top: 40px;
|
||
|
||
.my-icons {
|
||
width: 20px;
|
||
|
||
}
|
||
|
||
position: fixed;
|
||
top: 0px;
|
||
}
|
||
</style> |