鯉溪鄉(xiāng)微信小程序開發(fā)中var that =this的基本用法

閱讀 37579  ·  發(fā)布日期 2020-08-24 17:26  ·  溫州優(yōu)光網(wǎng)絡(luò)科技有限公司|建站|APP小程序制作|做網(wǎng)站SEO推廣優(yōu)化
【摘要】 在微信小程序開發(fā)中,var that =this的聲明很常見。舉個(gè)例子,代碼如下!示例代碼11 //index.js 2 Page({ 3 4 data: { 5 toastHidden: true, 6 }, 7 8 loadData: function () {... 【溫州小程序開發(fā),溫州微信公眾號(hào),平陽做網(wǎng)站,平陽網(wǎng)站建設(shè)公司,平陽小程序商城制作,昆陽萬全做網(wǎng)站,鰲江水頭小程序,蕭江騰蛟微信公眾號(hào),山門順溪南雁海西南麂鳳臥麻步懷溪網(wǎng)絡(luò)網(wǎng)店服務(wù),政采云網(wǎng)店管理服務(wù)】...

微信小程序開發(fā)中var that =this的基本用法

在微信小程序開發(fā)中,var that =this的聲明很常見。
舉個(gè)例子,代碼如下!示例代碼11 //index.js 2 Page({
3 4 data: {
5 toastHidden: true, 6 }
, 7 8 loadData: function () {
9 var that = this//這里聲明了that;將this存在that里面 10 wx.request({
11 url: '
test.php'
, 12 data: {
a: '
a'
, b: '
b'
}
, 13 header: {
14 '
content-type'
: '
application/json'
15 }
, 16 success(res) {
17 that.setData({
toastHidden: false }
) //這里使用了that,這樣就可以獲取Page({
}
)對(duì)象 18 }
, 19 }
) 20 }
21 22 }
)在代碼中第9行聲明了var that =this;第17行使用了that。
如果不聲明var that =this,且that改成this,代碼如下!示例代碼21 //index.js 2 Page({
3 4 data: {
5 toastHidden: true, 6 }
, 7 8 loadData: function () {
9 wx.request({
10 url: '
test.php'
, 11 data: {
a: '
a'
, b: '
b'
}
, 12 header: {
13 '
content-type'
: '
application/json'
14 }
, 15 success(res) {
16 this.setData({
toastHidden: false }
) 17 }
, 18 }
) 19 }
20 21 }
)此時(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.因此可以通過this關(guān)鍵字訪問或者重新設(shè)置Page({
}
)里data的變量3.然而在loadData函數(shù)中使用了wx.request({
}
)API這個(gè)方法導(dǎo)致在wx.request({
}
)里沒辦法使用this來獲取Page({
}
)對(duì)象4.雖然在wx.request({
}
)里沒法使用this獲取Page({
}
)對(duì)象,但是可以在wx.request({
}
)外面先把this存在某個(gè)變量中,所以就有了var that =this 這個(gè)聲明。
此時(shí)that指代Page({
}
)整個(gè)對(duì)象,這樣子就可以在wx.request({
}
)里使用that訪問或者重新設(shè)置Page({
}
)里data的變量推薦教程:
《JS教程》以上就是微信小程序開發(fā)中var that =this的基本用法的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!
微信
分享相關(guān)標(biāo)簽:
前端 小程序 javascript css3 html5本文轉(zhuǎn)載于:
segmentfault,如有侵犯,請(qǐng)聯(lián)系[email protected]刪除
上一篇:
什么是骨架屏(Skeleton Screen)?
下一篇:
微信小程序wx.request請(qǐng)求數(shù)據(jù)報(bào)錯(cuò)相關(guān)文章相關(guān)視頻自學(xué)微信小程序從零到一:
項(xiàng)目構(gòu)建后http請(qǐng)求封裝微信小程序-canvas生成圖片并保存到本地怎樣將微信小程序發(fā)送到桌面?微信小程序?qū)崟r(shí)監(jiān)聽less文件編譯成wxss文件,...微信小程序開發(fā)中var that =this的基本...初識(shí)微信小程序(2)初識(shí)微信小程序(3)初識(shí)微信小程序(4) [溫州做小程序]