美文网首页
微信小程序 在异步的success方法中使用this.setDa

微信小程序 在异步的success方法中使用this.setDa

作者: 守星的犬 | 来源:发表于2018-07-27 01:45 被阅读158次

    比如page的data里有一个message,想要在执行wx.request成功的时候修改它的值

     data: {
        message:"hi~"
      },
    

    一般很容易这样写:

     wx.request({
        url: 'https://www.some.com/user',
        method:'POST',
        data: {
            code: res.code
        },
        header: {
            'content-type': 'application/json' 
        },
        success: function (res)     {
            console.log(res.data);
            this.setData({ message: 'success' });   //错误的写法      
        }
    })
    

    上面 this.setData中的this对象已经不是page了。修改一下,正确的代码:

     var that = this; //把page对象赋值给新建的对象
    
     wx.request({
        url: 'https://www.some.com/user',
        method:'POST',
        data: {
            code: res.code
        },
        header: {
            'content-type': 'application/json' 
        },
        success: function (res)     {
            console.log(res.data);
            that.setData({ message: 'success' });   //这里用that
        }
    })
    

    相关文章

      网友评论

          本文标题:微信小程序 在异步的success方法中使用this.setDa

          本文链接:https://www.haomeiwen.com/subject/pczimftx.html