pay.js 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import platform from "@/utils/platform";
  2. import config from '@/config';
  3. export const wxPay = (obj) => {
  4. return new Promise(resolve => {
  5. const plat = platform()
  6. if (plat === 'H5') {
  7. WeixinJSBridge.invoke(
  8. 'getBrandWCPayRequest', {
  9. "appId": config.appid, //公众号ID,由商户传入
  10. "timeStamp": obj.timeStamp, // cfg.timeStamp, //时间戳,自1970年以来的秒数
  11. "nonceStr": obj.nonceStr, // cfg.nonceStr, //随机串
  12. "package": obj.packageValue, // cfg.packages,
  13. "signType": obj.signType, // cfg.signType, //微信签名方式:
  14. "paySign": obj.paySign // cfg.paySign //微信签名
  15. },
  16. function(res) {
  17. console.log(res,'respay');
  18. if (res.err_msg == "get_brand_wcpay_request:ok") {
  19. // 使用以上方式判断前端返回,微信团队郑重提示:
  20. //res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠。
  21. //跳转支付成功展示页面
  22. // 支付成功后的回调函数
  23. console.log(res)
  24. resolve(true)
  25. } else if (res.err_msg == "get_brand_wcpay_request:fail") {
  26. uni.showToast({
  27. title: '支付失败!',
  28. icon: 'none'
  29. })
  30. resolve(false)
  31. } else {
  32. uni.showToast({
  33. title: '支付失败!',
  34. icon: 'none'
  35. })
  36. resolve(false)
  37. //修改上面生成的预支付订单状态
  38. }
  39. });
  40. }
  41. })
  42. }