微信小程序添加卡券到微信卡包,使用wx.addCard()方法传参及整体流程

697 阅读1分钟

一、准备:

1.经微信认证过的微信公众号。

2.经微信认证过的微信小程序号。

通过链接打开小程序的功能:获取 URL Scheme | 微信开放文档

先来看看微信小程序官方的文档,developers.weixin.qq.com/miniprogram…

在看看微信介入卡券的流程,mp.weixin.qq.com/cgi-bin/ann…

二、开始

小程序端,点击事件调用wx.addCard()方法,其中需要重点了解的是cardExt里面的参数

wx.addCard({
      cardList: [
        {
          cardId: card_id,
          cardExt: JSON.stringify(cardExt)
        }
      ],
      success: (res) => {
        console.log(res)
        this.addCardSuccess(res.cardList[0].code)
      },
      fail: (err) => {
        console.log(err)
      }
    })

下面是官方文档的介绍

有个fixed_begintimestamp时间戳需要注意,这个字段是用户实际领取的优惠券时间,所以必须是用户领取完毕之后才可以添加到微信卡券。

这写参数都是由后台传过来的,放在了this.data.wxCardData里面

addToWeixinCard () {
    // this.data.wxCardData为从后台获取的一些参数,包括下面这些参数
    let { card_id, code, timestamp, openid, nonce_str, signature, fixed_begintimestamp } = this.data.wxCardData
    let cardExt = {
      code,
      openid,
      timestamp,
      nonce_str,
      fixed_begintimestamp,
      signature,
      outer_str: 'miniProgram'
    }
    console.log(card_id)
    wx.addCard({
      cardList: [
        {
          cardId: card_id,
          cardExt: JSON.stringify(cardExt)
        }
      ],
      success: (res) => {
        console.log(res)
        this.addCardSuccess(res.cardList[0].code)
      },
      fail: (err) => {
        console.log(err)
      }
    })
  }

最后调用该方法就可以了,如果调用成功则会跳转到下面的页面

到这里就完成了添加到微信卡券的所有步骤了