\pages\WxPay\WxPay.js

// pages/insurance/WxPay/WxPay.js

Page({

/**

* 页面的初始数据

*/

data: {

text:"",

params:null,

},

/**

* 生命周期函数--监听页面加载

*/

onLoad: function (options) {

this.wxPayFn(options);

},

/**

* 生命周期函数--监听页面初次渲染完成

*/

onReady: function () {

},

/**

* 生命周期函数--监听页面显示

*/

onShow: function () {

//console.log(this.params);

},

/**

* 生命周期函数--监听页面隐藏

*/

onHide: function () {

},

/**

* 用户点击右上角分享

*/

onShareAppMessage: function () {

},

wxPayFn:function(obj){

let _this = this;

encodeURIComponent(obj.prepay_id)

console.log(obj.paySeqNo)

wx.requestPayment({

'timeStamp': obj.timeStamp,

'nonceStr': obj.nonceStr,

'package': decodeURIComponent(obj.prepay_id),

'signType': 'MD5',

'paySign': obj.paySign,

'success': function (res) {

wx.showLoading({title: '请稍等..',mask:false,})

let timer = setTimeout(function(){

_this.queryPaymentStatus(obj.paySeqNo, timer)

},1600)

},

'fail': function (res) {

wx.showModal({

title: '温馨提示',

content:"支付失败",

showCancel: false,

success: function (res) {

if (res.confirm) {

console.log('用户点击确定')

wx.switchTab({

url: '/pages/index/index'

})

} else if (res.cancel) {

console.log('用户点击取消');

return;

}

}

})

}

})

},

queryPaymentStatus: function (paySeqNo,timer){

let _this = this;

/* 支付状态 */

let payStatus = {

SUCC: 1,

// 查询订单:支付成功

FAILD: 3 // 查询订单:支付失败

};

wx.request({

url: wx.getStorageSync('API').queryPaymentStatus,

method:"POST",

header:{

'content-type':'application/x-www-form-urlencoded'

},

dataType:"json",

success: function (result){

if (result.payStatus == payStatus.SUCC) {

let sendData = {

paySeqNo: paySeqNo,

bankSeqNo: result.bankSeqNo,

responseProtocol: 'json',

uuid: result.A_M_C_N

}

_this.ahhsInsureConfirmPolicy(sendData)

} else {

wx.hideLoading();

wx.navigateTo({

url: '/pages/paySucceed/paySucceed'

})

}

},

fail:function(err){

wx.hideLoading();

wx.navigateTo({

url: '/pages/paySucceed/paySucceed'

})

},

complete:function(){

clearTimeout(timer)

}

})

},

ahhsInsureConfirmPolicy: function (sendData){

wx.request({

url: wx.getStorageSync('API').ahhsInsureConfirmPolicy,

method:'GET',

data: sendData,

header: {

'content-type': 'application/x-www-form-urlencoded'

},

dataType: "json",

success: function (response){

},

fail:function(err){

},

complete:function(res){

wx.hideLoading();

wx.navigateTo({

url: '/pages/paySucceed/paySucceed'

})

}

})

}

})

\pages\WxPay\WxPay.wxml

<!--pages/insurance/WxPay/WxPay.wxml-->

<view class='atPay'>

<image src='/images/paying.png'></image>

</view>

/* pages/insurance/WxPay/WxPay.wxss */

.atPay{

margin: 0 auto;

text-align: center;

width: 100%;

}

.atPay image{

margin-top: 50rpx;

width: 180rpx;

height: 156rpx;

}

转载于:https://blog.51cto.com/iicoo/2135094

\pages\WxPay\WxPay.js相关推荐

  1. 【微信】微信小程序 微信开发工具 创建js文件报错 pages/module/module.js 出现脚本错误或者未正确调用 Page()...

    创建报错pages/module/module.js 出现脚本错误或者未正确调用 Page() 解决方法: 在js文件中添加 Page({}) 转载于:https://www.cnblogs.com/ ...

  2. Please do not register multiple Pages in pages/buildhelp/buildhelp.js

    这个问题是自己在合并代码的时候出现的错误 合并代码的时候出现了异常, 最后发现Page多出现了一个,然后去到js里面删除报错就消失了.

  3. 小程序运行报错:“pages/xxx/xxx.js 出现脚本错误或者未正确调用 Page()

    错误原因: page编译错误,或者出现脚本错误或者未正确调用 Page()函数. 解决方法: 在js文件里加入一个空白的Page函数调用: Page({ }) 或者按照以下步骤操作: 1.在调试-&g ...

  4. APICloud集成微信支付(wxPay第二种方案)

    写在前面 我是先拿一个Demo测试的,然后再接入我们的app的,其中包名和应用签名必须实时更新,根据不同的app,即使相同的包名,应用签名是不同的,这点需要注意. 评论里的一位小伙伴儿遇到问题后总结出 ...

  5. 微信退款具体代码 wxpay 开源

    wxpay.refund的具体参数描述 1:回调地址 2:微信生成的订单号 3:商户订单号 4:商户退款单号 5:支付的钱 6:退款的钱 7:退款原因 public Map getRefundMap( ...

  6. 微信公众号页面支付接口java,[Java教程]微信公众号支付(三):页面调用微信支付JS并完成支付...

    [Java教程]微信公众号支付(三):页面调用微信支付JS并完成支付 0 2015-09-15 15:00:30 一.调用微信的JS文件 1.首先要绑定[JS接口安全域名],"公众号设置&q ...

  7. Promise - js异步控制神器

    微信小程序开发交流qq群   581478349    承接微信小程序开发.扫码加微信. 正文: 首先给来一个简单的demo看看Promise是怎么使用的: <!DOCTYPE html> ...

  8. framer x使用教程_如何使用Framer Motion将交互式动画和页面过渡添加到Next.js Web应用程序

    framer x使用教程 The web is vast and it's full of static websites and apps. But just because those apps ...

  9. next.js_Next.js手册

    next.js I wrote this tutorial to help you quickly learn Next.js and get familiar with how it works. ...

最新文章

  1. 陈灯可重用代码段管理器(插件版最新版本:3.2;桌面版最新版本:2.3)
  2. Qt / QMainWindow、QDialog、QWidget
  3. java算法:冒泡排序
  4. struct和union,enum分析
  5. err2matlab,matlab中增量调制的编程问题
  6. Power BI中的AI语义分析应用:《辛普森一家》
  7. C语言里面的 malloc 函数
  8. 软件体系结构风格复习总结
  9. python调用cmd执行命令_python怎么运行cmd命令
  10. C语言统计1到100素数的个数,统计1到100素数的个数
  11. 思科模拟器路由表怎么看_Cisco路由配置教程 Cisco路由器静态路由与默认路由的配置方法图解...
  12. 大数据工程师必备之数据可视化技术
  13. 卡西欧科学计算机使用方法,卡西欧计算器使用说明
  14. Unity两点距离计算
  15. 汇编语言---指令格式和基本语法
  16. Storyboard Animations
  17. 获取DOM元素后,对NodeList的遍历的几种方法
  18. 【CTF bugku 秋名山车神】关于会话脚本、session、正则表达式
  19. 使用easypoi导出excel实现动态列
  20. js对json对象的遍历和其他方法处理

热门文章

  1. perl学习之:函数总结
  2. php生成静态html分页实现方法
  3. 现在股市里人人都在赚钱!!到底谁在亏钱?我讲一个故事来告诉大家谁亏钱了...
  4. [翻译]运用文件解析器在任意文件中使用虚拟应用路径(~)
  5. 如何获取系统的临时目录路径?
  6. java sort排序
  7. ${ctx} 的那些事
  8. 用EnumProcesses()枚举进程
  9. linux命令行 基础,Linux命令行基础,关于Bash需要知道的一些常识
  10. html5 自适应手机布局,科技常识:html5移动端自适应布局的实现