国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 熱點(diǎn) > 微信 > 正文

微信小程序開(kāi)發(fā)中var that =this的用法詳解

2024-07-22 01:19:21
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

在微信小程序開(kāi)發(fā)中,var that =this的聲明很常見(jiàn)。舉個(gè)例子,代碼如下!

示例代碼1

 //index.js  Page({     data: {   toastHidden: true,   },     loadData: function () {    var that = this//這里聲明了that;將this存在that里面    wx.request({     url: 'test.php',     data: {a: 'a', b: 'b'},     header: {     'content-type': 'application/json'     },     success(res) {       that.setData({ toastHidden: false }) //這里使用了that,這樣就可以獲取Page({})對(duì)象     },    })   }   })

在代碼中第9行聲明了var that =this;第17行使用了that。

如果不聲明var that =this,且that改成this,代碼如下!

示例代碼2

 //index.js   Page({    data: {    toastHidden: true,   },    loadData: function () {    wx.request({    url: 'test.php',    data: {a: 'a', b: 'b'},    header: {     'content-type': 'application/json'    },    success(res) {     this.setData({ toastHidden: false })     },    })   }   })

此時(shí)運(yùn)行代碼就會(huì)報(bào)以下錯(cuò)誤!

從報(bào)錯(cuò)中得知setData這個(gè)屬性讀不到,為何讀不到?這跟this關(guān)鍵字的作用域有關(guān)!

this作用域分析:

1.在Page({})里面,this關(guān)鍵字指代Page({})整個(gè)對(duì)象

2.因此可以通過(guò)this關(guān)鍵字訪問(wèn)或者重新設(shè)置Page({})里data的變量

3.然而在loadData函數(shù)中使用了wx.request({})API這個(gè)方法導(dǎo)致在wx.request({})里沒(méi)辦法使用this來(lái)獲取Page({})對(duì)象

4.雖然在wx.request({})里沒(méi)法使用this獲取Page({})對(duì)象,但是可以在wx.request({})外面先把this存在某個(gè)變量中,所以就有了var that =this 這個(gè)聲明。此時(shí)that指代Page({})整個(gè)對(duì)象,這樣子就可以在wx.request({})里使用that訪問(wèn)或者重新設(shè)置Page({})里data的變量

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持錯(cuò)新站長(zhǎng)站。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 盘山县| 青田县| 重庆市| 保山市| 屯留县| 陆良县| 盐池县| 洛川县| 息烽县| 湾仔区| 宣城市| 新邵县| 旬阳县| 镇原县| 阿鲁科尔沁旗| 安西县| 波密县| 古田县| 庆城县| 桦川县| 昔阳县| 神木县| 苗栗县| 女性| 临沧市| 石门县| 江油市| 郑州市| 彰化市| 弥渡县| 遂平县| 英超| 葫芦岛市| 瑞昌市| 民和| 米易县| 伊川县| 卢氏县| 兰州市| 弥渡县| 武宁县|