收藏
回答

为啥我的赋值不能赋值到deat里面去

问题模块
API和组件

为啥我的赋值不能赋值到deat里面去,这是为什么。为呀为什么。咦,咦!


最后一次编辑于  2017-05-11  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

12 个回答

  • 赛文.迪斯.雷特
    赛文.迪斯.雷特
    2017-05-11

    将this改为that,然后在方法开始加入 const that = this

    2017-05-11
    赞同
    回复
  • Key
    Key
    2017-05-11

    熊猫,是改哪一个this,,,,,,,(- _-)

    2017-05-11
    赞同
    回复
  • yang💢
    yang💢
    2017-05-11

    闭包

    2017-05-11
    赞同
    回复
  • Key
    Key
    2017-05-11

    你可以帮我打一下吗。小熊猫。,,,非常感谢 


    onLoad: function (options) {
        var rs = [];
        wx.request({
          url: ',
          header: {
            'content-type': 'application/json'
          },
          success: function (res) {
            console.log(res.data.showapi_res_body.pagebean.songlist);
            rs = res.data.showapi_res_body.pagebean.songlist;
            this.setsj(rs);
          }
        });
      },
      setsj: function (shuju) {
        console.log(shuju);
        this.setData({
          recommends: shuju
        }); 


    2017-05-11
    赞同
    回复
  • Key
    Key
    2017-05-11

    啥子是闭包

    2017-05-11
    赞同
    回复
  • 麦琪
    麦琪
    2017-05-11

    每个function的第一行都写上const that=this,然后里面凡是用到this的地方全部改成that,就oK了。

    2017-05-11
    赞同
    回复
  • YJFn
    YJFn
    2017-05-11

    onLoad: function (options) {

        const that = this   

        var rs = [];
        wx.request({
          url: ',
          header: {
            'content-type': 'application/json'
          },
          success: function (res) {
            console.log(res.data.showapi_res_body.pagebean.songlist);
            rs = res.data.showapi_res_body.pagebean.songlist;
            that.setsj(rs);
          }
        });
      },
      setsj: function (shuju) {
        console.log(shuju);
        this.setData({
          recommends: shuju
        }); 


    2017-05-11
    赞同
    回复
  • Key
    Key
    2017-05-11

    你们说的,咋个我有点乱呢

    2017-05-11
    赞同
    回复
  • 赛文.迪斯.雷特
    赛文.迪斯.雷特
    2017-05-11

    YJFn  的写法就行了

    2017-05-11
    赞同
    回复
  • YJFn
    YJFn
    2017-05-11

    wx.request的success函数里,this的上下文已经改变了,所以要在外面先定义一个const that = this,把this存起来,在wx.request里用that就行了

    2017-05-11
    赞同
    回复