博客
关于我
小程序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/

你可能感兴趣的文章
OpenCV探索
查看>>
OpenCV环境搭建(一)
查看>>
openCV目标识别 目标跟踪 YOLO5深度学习 Python 计算机视觉 计算机毕业设计 源码下载
查看>>
opencv笔记(1):图像缩放
查看>>
opencv笔记(二十四)——得到轮廓之后找到凸包convex hull
查看>>
OpenCV计算点到直线的距离 数学法
查看>>
Opencv识别图中人脸
查看>>
OpenCV读写avi、mpeg文件
查看>>
opencv面向对象设计初探
查看>>
OpenCV(1)读写图像
查看>>
OpenCV:不规则形状区域中每种颜色的像素数?
查看>>
OpenCV:概念、历史、应用场景示例、核心模块、安装配置
查看>>
OpenDaylight融合OpenStack架构分析
查看>>
OpenERP ORM 对象方法列表
查看>>
openEuler Summit 2022 成功举行,开启全场景创新新时代
查看>>
openEuler 正式开放:推动计算多样化时代的到来
查看>>
OpenEuler23.03欧拉系统_安装瀚高数据库企业版6.0.4_踩坑_安装以后系统无法联网_启动ens33网卡---国产瀚高数据库工作笔记002
查看>>
OpenFeign源码学习
查看>>
OpenFeign组件声明式服务调用
查看>>
openfire源码解读之将cache和session对象移入redis以提升性能
查看>>