• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

微信小程序真机调试数据调用出错

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

老规矩,问题描述:

在使用开发者工具下,程序按照理想中的执行逻辑进行,但是在进行真机测试时,会有数据不能传过来的现象。

具体见下图:

开发者工具端的AppData显示:

实机调试中AppData显示:

许多参数都是为空,造成结果就是许多参数不能正常显示

分析原因:

①that.setData不能正常的传值给数据层 。。。。。。。。源程序中是将that.setData写在API中造成的,如下:  db.collection("errorSwitch").where({******}).get({

        success:function(res){

                that.setData({

                              faultArrayImportant_Parameters:res.data[0].Fault.split(",")

                      })

         }

})

后来改变that.setData位置,发现that.setData中一旦调用res数据,就不能正确传值,各种尝试,都不能解决当前问题。

②执行顺序的问题,本人怀疑是当前处理没有进行,将这堆处理写到了上面一个处理函数中后,解决该问题。应该是在onloading中,同时并行写了多个处理,电脑端还可以从上往下依次执行,但是手机端就不会,标准的异步处理,才不会管你有没有做完,反正最快速度执行完,那么问题来了,就会出现当前变量值还没被调用,就已经用该变量进行一堆处理了,也就造成数值不能正常现实的现象了。。。。。(感觉超坑的,不好意思,我还曾对开发者工具产生过怀疑,虽然这个工具不咋滴)

总结:

一共花了两天处理这个问题,是真的难受,不知道错哪里,强烈建议新手了解下处理执行顺序,可以让你避免很多奇奇怪怪的坑。最后,冷静,分析。。。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap