開發釘釘小程序-企業內部應用時,用到二維碼jsapi
在小程序開發工具中開發模擬掃碼沒問題,但是在手機上會報錯,走完報錯fail后還會走success,並且不會再走success成功后的回調函數
報錯信息是error == 2 查看api文檔上只有error狀態碼為10和11,沒有2
分析了走報錯后再走成功,發現成功的打印后會多一個/n 空格標識符
因此更改二維碼 原來是生成的二維碼有問題,會空格換行了。去掉就解決了
fnQrCode(){//二維碼掃入功能 dd.scan({ type: 'qr', success: (res) => { dd.alert({ title: 'ercode:'+JSON.stringify(res) }); // console.log(res) this.setData({ barInfo:res.code,//掃碼后的碼 }) this.testApi() }, complete:(res)=>{ // dd.alert({ title: res.code }); dd.alert({ title: 'complete:'+JSON.stringify(res) }); // this.getApi()//調用接口 }, fail:(err)=>{ dd.alert({ title:JSON.stringify(err) }); console.log(err) } }); },
會倒着發生彈框=》fail=》complete=>success :所以this.testApi 應該放在success 不然還沒有設置barInfo就執行會出現問題