博客
关于我
小程序var that=this
阅读量:440 次
发布时间:2019-03-06

本文共 735 字,大约阅读时间需要 2 分钟。

在小程序的JS函数中,通常第一句会声明var that = this,这主要是为了在后续的回调函数中保持对当前函数上下文的引用。这种做法的必要性在于,在异步操作完成后,回调函数的this可能会指向不同的对象,导致无法直接访问原函数的this。通过将当前的this保存到that变量中,可以在回调函数中使用该变量来访问原函数的this,确保能够正确地更新数据。例如,在以下代码中:

Page({  loadUsers: function () {    var that = this;    data: {      questionId: null;      title: null    }    wx.request({      url: 'http://0.0.0.0:5000/question/type=2/2',      method: 'get',      success: function(res) {        console.log(res.data);        var d = res.data['data'];        that.setData({          questionId: d['questionId'],          title: d['title']        });        console.log(that.data.questionId);      }    });  },});

如果不使用var that = this,在回调函数中直接使用this,可能会导致无法访问that.data,从而引发错误。因此,使用var that = this是保持程序正确运行的关键。

转载地址:http://bflyz.baihongyu.com/

你可能感兴趣的文章
Oracle EBS-SQL (BOM-15):检查多层BOM(含common BOM).sql
查看>>
Oracle EBS环境下查找数据源(OAF篇)
查看>>
oracle Extract 函数
查看>>
Oracle GoldenGate Director安装和配置(无图)
查看>>
oracle ogg 单实例双向复制搭建(oracle-oracle)--Oracle GoldenGate
查看>>
oracle scott趣事
查看>>
oracle script
查看>>
Oracle select表要带双引号的原因
查看>>
Oracle SOA Suit Adapter
查看>>
Oracle Spatial GeoRaster 金字塔栅格存储
查看>>
Oracle Spatial空间数据库建立
查看>>
UML— 活动图
查看>>
Oracle Statspack分析报告详解(一)
查看>>
oracle tirger_在Oracle中,临时表和全局临时表有什么区别?
查看>>
oracle where 条件的执行顺序分析1
查看>>
oracle 使用leading, use_nl, rownum调优
查看>>
oracle 修改字段类型方法
查看>>
oracle 内存参数示意图
查看>>
Oracle 写存储过程的一个模板还有一些基本的知识点
查看>>
Oracle 创建 DBLink 的方法
查看>>