先说一下需求,我需要在onShow事件里注册一个事件A,当调用wx.scanCode成功获取到扫码结果后触发这个事件A,然后在onHide事件里关闭这个事件A。
经过测试,Android系统调取wx.scanCode成功获取到扫码结果后先会执行onShow事件再获取结果。而IOS系统恰恰相反,它是先获取到结果后再触发onShow事件。导致我的业务出现了奇怪的问题,Android系统扫码后正常的触发了事件A,但是IOS系统扫码后不会触发事件A,因为事件A还没被注册就去触发事件A当然无效。
代码片段:注意看日志,安卓系统和ios在扫码成功后获取结果的日志打印顺序不同。
请提供能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。