请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

data里面定义的数据,在onLoad里面请求赋值,获取不到值

老师您好,比如我在页面data里面定义了一个变量,然后再onLoad生命周期函数里面请求了API数据,然后this.setData()赋值,然后再onLoad里面console.log显示NULL,这是什么原因?有的说是回调异步,怎样解决?

正在回答 回答被采纳积分+3

1回答

沁尘 2021-07-21 20:53:41

这个是异步导致的。setData()是异步的操作,你在执行 setData 之后马上 console.log 这时候异步都还没执行完所以是 NULL。

这种没啥解决办法,因为是属于实现逻辑上的错误,即本来就不能这么写。

当然,你这么写肯定有你的原因,你可以把你的场景和需求描述下,提供下代码片段,老师给你建议。

0 回复 有任何疑惑可以回复我~
  • 提问者 如影随形10 #1
    老师我是封装了request统一请求的,返回的promise,因为我需要在页面加载的时候获取数据,然后判断后显示在页面上。
    回复 有任何疑惑可以回复我~ 2021-07-21 21:25:55
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信