广州凡科互联网科技有限公司

营业时间
MON-SAT 9:00-18:00

全国服务热线
18720358503

公司门店地址
广州市海珠区工业大道北67号凤凰创意园

h5游戏软件开发-uniapp实现小程序支付功能

日期:2021-04-16 浏览:
--------

h5游戏软件开发

-------


我这个新项目是一个外卖小程序

最先要做付款作用,需要两个标准

1.务必是公司,本人客户不好
2.去手机微信付款服务平台递交材料审批

最先封裝互联网恳求
api.js

// 引进提醒
import {errdata} from 'api/errdata.js'
// GET
let listing = function(urling){
 return new Promise((resolve,reject)= {
 uni.request({
 url:urling,
 method:'GET',
 .then((res)= {
 // console.log(res[1])
 uni.showLoading({
 title:'载入中'
 resolve(res[1])
 setTimeout(()= {
 uni.hideLoading()
 },1000)
 .catch((err)= {
 let errs = '服务器不正确 请稍后再试'
 errdata.errlist(errs)
 reject(err)
// POST恳求
let publicing = function(urling,shopdata){
 return new Promise((resolve,reject)= {
 uni.request({
 url:urling,
 method:'POST',
 data:shopdata,
 .then((res)= {
 uni.showLoading({
 title:'载入中'
 // console.log(res[1])
 resolve(res[1])
 setTimeout(()= {
 uni.hideLoading()
 },1000)
 .catch((err)= {
 let errs = '服务器不正确 请稍后再试'
 errdata.errlist(errs)
 reject(err)
export{listing,publicing}

errdata.js是一个不正确提醒

// 提醒
const errdata = {
 errlist(err){
 uni.showToast({
 icon:'none',
 title: err,
 duration: 3000
export{errdata}

request.js是详细地址

// 公共详细地址
let url = 'api/'
// 手机微信付款
let wxpayingurl = `${url}wxpay/wxpaying`
export{wxpayingurl}

随后付款的情况下也分三步,第一步是统一下单

var {log} = console
// 引入提醒组件
// post
import {publicing} from '../../api/api.js'
// 详细地址
import {wxpayingurl} from '../../api/request.js'

这是付款编码

 //手机微信付款
 async wxPay() {
 // 提醒客户正在下单,避免客户数次点一下下单按钮
 wx.showToast({
 title: '正在下单',
 icon: 'loading',
 duration: 200000,
 mask: true
 //搞定必填主要参数
 //顾客信息内容
 let peopleobj = {
 address: this.addressing.detailInfo,
 name: this.addressing.userName,
 iphone: this.addressing.telNumber
 // 商家标志
 let merchantid = this.MerchantId
 // 截取商家标志标识符串
 let ide = this.MerchantId.slice(0, 7)
 // 商家名字
 mod = this.nameshop
 // 商家logo
 let logo = this.logo
 //把要推送到后台管理到数据信息以目标方式储存
 r = {
 type: 'placeOrder',
 peopleobj,
 arrinfo: this.allorder,
 merchantid,
 ide,
 commod,
 logo,
 useropenid: this.openid,
 payment: this.payment
 r)
 // es6 :async await:多线程程序编写同歩化
 // 第一步:统一下单
 // await:等候
 let Placeorder = await this.r)
 let Payparame = Placeorder.data.datas
 // 第二步:进行付款
 let wxpay = await this.wxPays(Payparame)
 // 第三步:查寻情况下付款取得成功
  = await (Payparame)

随后是大家的第一步,统一下单

 r) {
 return new Promise((resolve, reject) = {
 publicing(wxpayingurl, r)
 .then((res) = {
 log(res)
 wx.hideToast()
 resolve(res)
 .catch((err) = {
 log(err)
 wx.hideToast()
 reject('付款不正确')

第二步就是进行付款

wxPays(Payparame) {
 return new Promise((resolve, reject) = {
 wx.requestPayment({
 timeStamp: Payparame.time_stamp,
 nonceStr: Payparame.nonceStr,
 package: `prepay_id=${Payparame.prepayId}`,
 signType: 'MD5',
 paySign: Payparame.payauto,
 success: (res) = {
 // log(res)
 resolve(res)
 fail: (err) = {
 log(err)
 reject(err)
  = '撤销付款'
 let ico = 'success'
 this., ico)

第三步是查寻是不是付款取得成功

 (Payparame) {
 return new Promise((resolve, reject) = {
 let data = {
 type: '',
 out_trade_no: Payparame.out_trade_no,
 id: Payparame._id,
 merchantid: this.MerchantId
 publicing(wxpayingurl, data)
 .then((res) = {
 log(res)
  = '付款取得成功'
 let ico = 'success'
 this., ico)
 .catch((err) = {
 log(err)
  = '付款不成功'
 let ico = 'success'
 this., ico)

---------

h5游戏软件开发

------------


新闻资讯

联系方式丨CONTACT

  • 全国热线:18720358503
  • 传真热线:18720358503
  • Q Q咨询:2639601583
  • 企业邮箱:2639601583@qq.com

首页
电话
短信
联系