開發釘釘小程序-企業內部應用時,用到二維碼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就執行會出現問題
