小程序
小游戏
企业微信
微信支付
扫描小程序码分享
在onload中调用wx.chooseInvoice,ios系统,小程序第一次调用能打开,在小程序进程不杀死的情况下,再次触发页面onload时里面的wx.chooseInvoice不会触发,安卓机型正常。
1 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
这个问题通常是因为 iOS 小程序在保持前一个页面状态的同时,也会保持前一个页面的选择器状态。当再次触发页面的 onLoad 时,之前的选择器状态可能会被保留,导致无法重新触发选择发票的操作。
onLoad
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
这个问题通常是因为 iOS 小程序在保持前一个页面状态的同时,也会保持前一个页面的选择器状态。当再次触发页面的
onLoad
时,之前的选择器状态可能会被保留,导致无法重新触发选择发票的操作。1.使用 onShow 替代 onLoad:将原本在 onLoad 中调用 wx.chooseInvoice 的逻辑移至页面的 onShow 方法中。onShow 方法在每次页面显示时都会触发,可以避免上述问题。
2.强制刷新页面状态:在 onLoad 中使用 wx.redirectTo 或 wx.reLaunch 方法跳转到一个相同的页面,并传递必要的参数。这样可以强制刷新页面状态,并重新触发选择发票的操作。