文章詳情頁
javascript - ajax at didMount or willMount
瀏覽:174日期:2023-02-11 13:08:44
問題描述
看了一下斷點,順序是16-30-21-30.也就是willmount之后render,load這個異步方法在任務(wù)隊列中再執(zhí)行,setState,diff,然后render為啥都說要在didmount里面ajax呢
問題解答
回答1:無論是在willMounnt還是didMount觸發(fā)異步請求,都會render兩次。第一次是組件加載時,第二次是在異步請求返回setState時。
但是,邏輯應(yīng)該是在顯示組件,比如有加載狀態(tài),然后去觸發(fā)請求。還有一個最重要的點,react fiber更新之后,他會多次觸發(fā)willMounnt,如此會引起bug。所以,異步請求一般放在didMount。
標簽:
JavaScript
上一條:javascript - js機制問題,是否都是等主線程執(zhí)行完畢再執(zhí)行異步,如果主線程有好幾萬行,或者上下文相關(guān)呢下一條:javascript - framework7 調(diào)攝像頭和相冊
相關(guān)文章:
1. boot2docker無法啟動2. java - SSH框架中寫分頁時service層中不能注入分頁類3. docker安裝后出現(xiàn)Cannot connect to the Docker daemon.4. 關(guān)于docker下的nginx壓力測試5. node.js - antdesign怎么集合react-redux對input控件進行初始化賦值6. 老師,按tab鍵不起作用怎么回事7. javascript - js如何獲取app保存的TOKEN?8. html - input中radio為什么多選9. javascript - 關(guān)于<a>元素與<input>元素的JS事件運行問題10. javascript - 使用vue2.x時,白屏現(xiàn)象
排行榜

熱門標簽
網(wǎng)公網(wǎng)安備