這里就不吹噓微信小程序有多厲害了,畢竟也不是我寫(xiě)的,直接談?wù)勎以谧鲂〕绦蜷_(kāi)發(fā)時(shí)遇到的奇異Bug。 getUserInfo多次調(diào)用: 對(duì)于wx.getUserInfo應(yīng)該很多開(kāi)發(fā)者都用過(guò),用于獲取用戶基本信息,前提是需要用戶授權(quán),如果用戶先前沒(méi)有授權(quán),則彈出一個(gè)提示框如下: 點(diǎn)擊允許后,我們就能拿到用戶信息,再進(jìn)行后面的一系列操作。這一切看起來(lái)都是那么美好,可是在某次運(yùn)行中,點(diǎn)允許授權(quán)后,程序并沒(méi)有按照我們的預(yù)期往下執(zhí)行。最后發(fā)現(xiàn)在其他的地方也調(diào)用一次了wx.getUserInfo方法,并且只執(zhí)行了其中一個(gè)授權(quán)成功的回調(diào)。假設(shè)是如下代碼: 結(jié)論:
當(dāng)然最好不要在多處同時(shí)調(diào)用wx.getUserInfo方法,不然遇到這個(gè)問(wèn)題會(huì)很頭疼。我對(duì)這個(gè)問(wèn)題的看法是,多次調(diào)用getUserInfo方法只會(huì)產(chǎn)生一個(gè)彈窗的實(shí)例,所以點(diǎn)擊允許時(shí),只執(zhí)行一次回調(diào)也很正常,但是隨機(jī)執(zhí)行其中一個(gè)方法就很奇怪了。 解決方法:
以下是測(cè)試環(huán)境: 微信開(kāi)發(fā)者工具版本:v1.01.170925 基礎(chǔ)庫(kù)版本: 1.3.0 如有問(wèn)題或不恰當(dāng)之處,歡迎斧正。 |