国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

uniapp使用uni.request獲取后端數(shù)據(jù)并渲染 | 含如何處理獲取到數(shù)據(jù)無法渲染問題

這篇具有很好參考價(jià)值的文章主要介紹了uniapp使用uni.request獲取后端數(shù)據(jù)并渲染 | 含如何處理獲取到數(shù)據(jù)無法渲染問題。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

問題描述:在uniapp中使用uni.request獲取后端數(shù)據(jù)并渲染,但是獲取到了數(shù)據(jù)無法進(jìn)行全局賦值。

data() {
	return {
		array:[]
	};
},
	
onLoad() {
	this.updateData();
}

updateData(){
	uni.request({
		url:'*****',
		data:{},
		header:{'Content-Type':'application/x-www-form-urlencoded'},
		success:(res)=>{
			console.log(res)
			let data = res.data;                    
			this.array = data;     // 在此步可以獲取到數(shù)據(jù)         
		}, 
		fail: () => {
			uni.showToast({
				icon: 'none',
				title: '網(wǎng)絡(luò)異常,請(qǐng)稍后重試'
			});
		}
	}); 
		this.useData();			// 調(diào)用方法
	}
}	

useData(){
	console.log(this.array);	// 在此步獲取到的數(shù)據(jù)為初始數(shù)據(jù)
}		
  • 造成數(shù)據(jù)無法全局賦值的原因主要是:uni.request是異步請(qǐng)求,此時(shí)打印出來的值,其執(zhí)行機(jī)制是:useData方法再到uni.request。
  • 如果需要調(diào)用函數(shù)并渲染到全局,則需要在更改方法的放置位置。
updateData(){
	uni.request({
		url:'*****',
		data:{},
		header:{'Content-Type':'application/x-www-form-urlencoded'},
		success:(res)=>{
			console.log(res)
			let data = res.data;                    
			this.array = data;     // 在此步可以獲取到數(shù)據(jù)  
			this.useData();		   // 在異步進(jìn)行調(diào)用方法       
		}, 
		fail: () => {
			uni.showToast({
				icon: 'none',
				title: '網(wǎng)絡(luò)異常,請(qǐng)稍后重試'
			});
		}
	}); 
		
	}
}	

附:箭頭函數(shù)指向問題文章來源地址http://www.zghlxwxcb.cn/news/detail-523222.html

  • 使用this直接賦值的方法
	uni.request({
		  ...
		  success: (res) => {
			this.data = res.data;	//若使用箭頭函數(shù)則可以進(jìn)行賦值
		  },
		  fail: (err) => {
		    console.error(err);
		  },
		});	
  • 使用that來間接賦值的方法
let that = this; 
uni.request({
		  ...
		  success: function(res){
			that.data = res.data;	//使用that來間接賦值
		  },
		  ...
		});	
  • 解釋:如果success直接寫成普通函數(shù)的形式,打印出來的this是success函數(shù)自身。而將success修改為箭頭函數(shù)即可拿到Vue實(shí)例對(duì)象的數(shù)據(jù)并進(jìn)行賦值及渲染到頁面上。
  • 區(qū)分:如果是箭頭函數(shù),this的指向是上下文作用域,不可能指向?qū)ο螅?strong>如果是普通函數(shù)或方法,this指向上一個(gè)作用域的this或者調(diào)用這個(gè)方法的對(duì)象。

到了這里,關(guān)于uniapp使用uni.request獲取后端數(shù)據(jù)并渲染 | 含如何處理獲取到數(shù)據(jù)無法渲染問題的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包