当前位置: 首页 > news >正文

wordpress最好主题专业seo站长工具

wordpress最好主题,专业seo站长工具,网页开发平台,哪个公司的网络最好用支付 渲染基础数据 支付页有俩个关键数据,一个是要支付的钱数,一个是倒计时数据(超时不支付商品释放) 准备接口 import request from /utils/httpexport const getOrderAPI (id) > {return request({url: /member/order/$…

支付

渲染基础数据

在这里插入图片描述
支付页有俩个关键数据,一个是要支付的钱数,一个是倒计时数据(超时不支付商品释放)
在这里插入图片描述

  1. 准备接口
import request from '@/utils/http'export const getOrderAPI = (id) => {return request({url: `/member/order/${id}`})
}
  1. 获取数据渲染内容
<script setup>
import { getOrderAPI } from '@/apis/pay'
import { onMounted, ref } from 'vue'
import { useRoute } from 'vue-router'
// 获取订单数据
const route = useRoute()
const payInfo = ref({})
const getPayInfo = async () => {const res = await getOrderAPI(route.query.id)payInfo.value = res.result
}
onMounted(() => getPayInfo())</script><template><div class="xtx-pay-page"><div class="container"><!-- 付款信息 --><div class="pay-info"><span class="icon iconfont icon-queren2"></span><div class="tip"><p>订单提交成功!请尽快完成支付。</p><p>支付还剩 <span>{{ formatTime }}</span>, 超时后将取消订单</p></div><div class="amount"><span>应付总额:</span><span>¥{{ payInfo.payMoney?.toFixed(2) }}</span></div></div><!-- 付款方式 --><div class="pay-type"><p class="head">选择以下支付方式付款</p><div class="item"><p>支付平台</p><a class="btn wx" href="javascript:;"></a><a class="btn alipay" :href="payUrl"></a></div><div class="item"><p>支付方式</p><a class="btn" href="javascript:;">招商银行</a><a class="btn" href="javascript:;">工商银行</a><a class="btn" href="javascript:;">建设银行</a><a class="btn" href="javascript:;">农业银行</a><a class="btn" href="javascript:;">交通银行</a></div></div></div></div>
</template>

实现支付功能

支付业务流程
在这里插入图片描述

  1. 支付携带参数
// 支付地址
const baseURL = 'http://pcapi-xiaotuxian-front-devtest.itheima.net/'
const backURL = 'http://127.0.0.1:5173/paycallback'
const redirectUrl = encodeURIComponent(backURL)
const payUrl = `${baseURL}pay/aliPay?orderId=${route.query.id}&redirect=${redirectUrl}`
  1. 支付宝沙箱账号信息
    在这里插入图片描述

支付结果展示

业务需求理解
在这里插入图片描述
在这里插入图片描述

  1. 准备模版
<script setup></script><template><div class="xtx-pay-page"><div class="container"><!-- 支付结果 --><div class="pay-result"><span class="iconfont icon-queren2 green"></span><span class="iconfont icon-shanchu red"></span><p class="tit">支付成功</p><p class="tip">我们将尽快为您发货,收货期间请保持手机畅通</p><p>支付方式:<span>支付宝</span></p><p>支付金额:<span>¥200.00</span></p><div class="btn"><el-button type="primary" style="margin-right:20px">查看订单</el-button><el-button>进入首页</el-button></div><p class="alert"><span class="iconfont icon-tip"></span>温馨提示:小兔鲜儿不会以订单异常、系统升级为由要求您点击任何网址链接进行退款操作,保护资产、谨慎操作。</p></div></div></div>
</template><style scoped lang="scss">
.pay-result {padding: 100px 0;background: #fff;text-align: center;margin-top: 20px;>.iconfont {font-size: 100px;}.green {color: #1dc779;}.red {color: $priceColor;}.tit {font-size: 24px;}.tip {color: #999;}p {line-height: 40px;font-size: 16px;}.btn {margin-top: 50px;}.alert {font-size: 12px;color: #999;margin-top: 50px;}
}
</style>
  1. 绑定路由
{path: 'paycallback', // 注意路径,必须是paycallbackcomponent: PayBack
},
  1. 渲染数据
<script setup>
import { getOrderAPI } from '@/apis/pay'
import { onMounted, ref } from 'vue'
import { useRoute } from 'vue-router'
const route = useRoute()
const orderInfo = ref({})const getOrderInfo = async () => {const res = await getOrderAPI(route.query.orderId)orderInfo.value = res.result
}onMounted(() => getOrderInfo())</script><template><div class="xtx-pay-page"><div class="container"><!-- 支付结果 --><div class="pay-result"><!-- 路由参数获取到的是字符串而不是布尔值 --><span class="iconfont icon-queren2 green" v-if="$route.query.payResult === 'true'"></span><span class="iconfont icon-shanchu red" v-else></span><p class="tit">支付{{ $route.query.payResult === 'true' ? '成功' : '失败' }}</p><p class="tip">我们将尽快为您发货,收货期间请保持手机畅通</p><p>支付方式:<span>支付宝</span></p><p>支付金额:<span>¥{{ orderInfo.payMoney?.toFixed(2) }}</span></p><div class="btn"><el-button type="primary" style="margin-right:20px">查看订单</el-button><el-button>进入首页</el-button></div><p class="alert"><span class="iconfont icon-tip"></span>温馨提示:小兔鲜儿不会以订单异常、系统升级为由要求您点击任何网址链接进行退款操作,保护资产、谨慎操作。</p></div></div></div>
</template>

封装倒计时函数

理解需求
在这里插入图片描述
编写一个函数useCountDown可以把秒数格式化为倒计时的显示状态,函数使用样例如下:
在这里插入图片描述

  1. formatTime为显示的倒计时时间
  2. start是倒计时启动函数,调用时可以设置初始值并且开始倒计时
    实现思路分析
    在这里插入图片描述
// 封装倒计时逻辑函数
import { computed, onUnmounted, ref } from 'vue'
import dayjs from 'dayjs'
export const useCountDown = () => {// 1. 响应式的数据let timer = nullconst time = ref(0)// 格式化时间 为 xx分xx秒const formatTime = computed(() => dayjs.unix(time.value).format('mm分ss秒'))// 2. 开启倒计时的函数const start = (currentTime) => {// 开始倒计时的逻辑// 核心逻辑的编写:每隔1s就减一time.value = currentTimetimer = setInterval(() => {time.value--}, 1000)}// 组件销毁时清除定时器onUnmounted(() => {timer && clearInterval(timer)})return {formatTime,start}
}
http://www.yayakq.cn/news/784418/

相关文章:

  • 平台网站模板素材图片河北住房与建设信息网站
  • iis 怎么绑定网站二级目录wordpress 注册邮箱
  • 网站建设项目的工作分解敬请期待海报
  • 珠宝手机网站模板wordpress rss 图片
  • 哪个网站有做阿里巴巴流量杭州知名设计公司有哪些
  • 陕西有限公司网站建设招标公告平台兼职网站开发
  • 南城网站建设公司策划wordpress前台访问地址
  • 网站建设 尚品中国wordpress 轮播
  • 网站定制兴田德润实力强房产网站建设哪家好
  • 天津网站开发公司企信网查询
  • 做网站的公司术语网站建设短期培训
  • 做水果的有什么网站开家做网站公司有哪些
  • 富拉尔基网站建设阿里云云主机做网站
  • 我自己做的网站怎么能查到160外发加工网
  • 有没有做任务一样的网站兼职企业官网响应式网站
  • 文章类型网站wordpress调用内容代码
  • 短期网站开发培训医疗网站模板下载
  • 绍兴商城网站开发设计上海市建设局网站
  • 怎么做淘宝客手机网站推广排名优化seo公司
  • 长沙网站关键词seo一流的医疗网站建设
  • 建设银行手机登录网站12306网站是哪个公司做的
  • 广告公司企业网站模板网络营销的六大特征
  • 企业如何建设免费网站网站的tdk指的是什么意思
  • 做流量任务的试用网站wordpress会员微信支付宝
  • 电影天堂网站用什么程序做的专业的内蒙古网站建设
  • 企业网站如何建设和推广网站建设明薇通网络不错
  • 一个网站怎么做pc和移动端做网站上数字快速增加
  • 松江网站关键词优化网站程序调试模式怎么做
  • 哈尔滨专业网站营销桂林市工程建设项目招标网站
  • 在线个人资料制作网站建筑网片规格介绍