日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
這個異步問題你肯定遇到過,但是會解決的并不多

大家肯定遇到過這樣類似的場景:多個 Tab 頁點擊切換功能,如果用戶點擊頻繁,很可能會出現(xiàn)當(dāng)前頁面顯示別的頁面的數(shù)據(jù)。

成都創(chuàng)新互聯(lián)公司是一家專注網(wǎng)站建設(shè)、網(wǎng)絡(luò)營銷策劃、微信小程序開發(fā)、電子商務(wù)建設(shè)、網(wǎng)絡(luò)推廣、移動互聯(lián)開發(fā)、研究、服務(wù)為一體的技術(shù)型公司。公司成立10多年以來,已經(jīng)為上千成都花箱各業(yè)的企業(yè)公司提供互聯(lián)網(wǎng)服務(wù)?,F(xiàn)在,服務(wù)的上千客戶與我們一路同行,見證我們的成長;未來,我們一起分享成功的喜悅。

因為每個接口返回信息的時間是不同的,你不能保證先請求的一定最先返回數(shù)據(jù),那么就很可能會出現(xiàn)停留在頁面一卻出現(xiàn)別的頁面的數(shù)據(jù)的情況。這種異步的情況術(shù)語稱之為異步競態(tài)。

這時肯定有讀者會說了,這還不簡單,我能給你輕松想出好幾個解決辦法。

節(jié)流、防抖、加 Loading!

這些做法固然能解決問題,但是都治標(biāo)不治本,而且還影響了用戶體驗,其實還有種辦法能夠完美解決問題:取消請求。

當(dāng)然了這個取消請求它只是不繼續(xù)處理接口后續(xù)的響應(yīng)了,并不是真的把請求給取消了。畢竟請求如果已經(jīng)發(fā)出去的話,我們也不能順著網(wǎng)線把它追回來。

我們這邊以 axios 為例來看看怎么取消請求:

 
 
 
  1. const CancelToken = axios.CancelToken; 
  2. const source = CancelToken.source(); 
  3.  
  4. axios.get('/user/12345', { 
  5.   cancelToken: source.token 
  6. }).catch(function (thrown) { 
  7.   if (axios.isCancel(thrown)) { 
  8.     console.log('Request canceled', thrown.message); 
  9.   } else { 
  10.     // handle error 
  11.   } 
  12. }); 
  13.  
  14. axios.post('/user/12345', { 
  15.   name: 'new name' 
  16. }, { 
  17.   cancelToken: source.token 
  18. }) 
  19.  
  20. // cancel the request (the message parameter is optional) 
  21. source.cancel('Operation canceled by the user.'); 

用法還是挺簡單的,對于可能會出現(xiàn)異步競態(tài)的情況下大家可以采用這個方法來解決。簡單好用,還不會影響用戶體驗,封裝下代碼就能用起來了。


網(wǎng)站標(biāo)題:這個異步問題你肯定遇到過,但是會解決的并不多
當(dāng)前鏈接:http://www.5511xx.com/article/dhegsej.html