为什么我用request请求数据后存到data里面,在success里面能打印数据,在外面data里面打印却是空

新手上路,请多包涵


data: {

   movie:{},
   cast:""
},
/**
 * 生命周期函数--监听页面加载
 */
onLoad: function (options) {
 
    const mid=options.mid;
    wx.request({
      url: app.gBaseUrl+'subject/'+mid,//不是查询参数,是直接在路径里面
      success: (result) => {
          console.log(result.data)
          this.setData({
              movie:result.data
          })
      },
    });
    console.log(this.data.movie)
},
阅读 1.5k
1 个回答

这里代码执行是异步的,

console.log(this.data.movie)

会比

          this.setData({
              movie:result.data
          })

早执行,所以 this.data.movie 是空的

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题