iphone在删掉已有的小程序的情况下,使用微信直接扫描二维码进入小程序,小程序为什么无法加载数据?
发布于 5 年前 作者 qzhou 4024 次浏览 来自 官方Issues

iphone6,7,8测试在删掉已有的小程序的情况下,使用微信直接扫描二维码进入小程序,小程序无法加载数据。当退出小程序后,在微信界面再次扫描二维码后,小程序数据能正常显示了。这个是什么问题?目前安卓机型不会出现该问题。

这个是配置微信扫描进入页面的onload生命周期的方法。

onLoad: function (options{
        let id = options.id 
            ,_this = this
            , pages = getCurrentPages()
            , prevPage = pages[pages.length - 2]
        if (prevPage && prevPage.route =="pages/myapp/myapp"){
            this.setData({
                isShare:true
            })
        }
        if (options.q != null) {
            var scanUrl = decodeURIComponent(options.q);
            if (scanUrl.indexOf("app=app") != -1) {
                let appToken = scanUrl.split("qrcode=")[1].split("&")[0]
                let data = {
                    token: appToken
                }
                getAppList(data).then(res => {
                    let id2 = res.data.content[0].ID
                    getAppListByid(id2).then(res => {
                        console.log(res)
                        if (res && res.data){
                            let resData = res.data
                            let appDetail = {
                                "应用说明": resData.APPDescribe,
                                "应用系统名称": resData.APPName,
                                "应用简称": resData.APPShortName,
                                "创建时间": resData.CreateTime,
                                "创建人": resData.Creater,
                            }
                            _this.setData({
                                appDetail,
                                appRealDetail: resData
                            })
                            _this.appDetail()
                        }else{
                            _this.setDetaultVal()
                        }
                    })
                    return
                }).catch(err =>{
                    _this.setDetaultVal()
                    return
                })
            } 
        }
        getAppListByid(id).then(res=>{
            console.log(res)
            let resData = res.data
            let appDetail = {
                "应用说明": resData.APPDescribe,
                "应用系统名称": resData.APPName,
                "应用简称": resData.APPShortName,
                "创建时间": resData.CreateTime,
                "创建人": resData.Creater,
            }
            _this.setData({
                appDetail,
                appRealDetail: resData
            })
            _this.appDetail()
        })
    }
2 回复

你数据 请求放到 onShow里。

测试环境打开调试才能看到数据的

回到顶部