一、背景
前端做二維碼,基本都是后臺返回一段字段串,然后我們前端拿到字符串去生成二維碼。
二、問題
我之前搞微信二維碼的時(shí)候也是引入了一個(gè)插件,https://github.com/yingye/weapp-qrcode,然后我們微信使用的話,就可以直接去看相應(yīng)的demo來解決問題,都比較詳情了,所以我就不說了。這里說的是支付寶的問題,因?yàn)槟阒苯右氲脑?,會提示wx is defined,因?yàn)橹Ц秾毿〕绦驔]有wx,這里就有問題了
三、解決辦法
我們需要改這個(gè)插件的原文件,但是由于node-modules打包時(shí),不上傳,所以我們需要clone到我們本地引入,用這個(gè)方法
import drawQrcode from '../../utils/weapp.qrcode.esm.js'
然后我們需要修改js中的內(nèi)容
wx.createCanvasContext改成my.createCanvasContext
這樣之后支付寶小程序就可以正常使用嘍~
Tips:最后小聲猜測,是不是其它的適用于微信小程序的二維碼,修改一下都可以在支付寶小程序正常使用呢?那就留給各位去驗(yàn)證嘍~~