React Hook 下setState的回調


背景: React 的hook出現了已經很長一段時間了,最近着手想把以前的reacrt16.5.0的代碼換成hook的寫法
Hook以前的寫法:
     ex:
        

   getDataInfo(dataId) {
      this.set({
         dataId: dataId
      }, ()=>{
             setDatainfo(dataId);
      })
   } 
  setDatainfo (dataId) {
       .....xxxxxx
  }


原以為直接

function getDataInfo(props) {
   const [dataId, setDataId] = useState('');
   setDataId(dataId, ()=>{setDataInfo(dataId)});
}

然后報錯了,不支持第二個參數;
在react官方git上搜羅了一下解決方案
https://github.com/facebook/react/issues/14174

Abramov 大神居然也回了,沒必要使用的第二個參數,雖然各路大神都貼出了解決方案,但是跟着Abramov的思路應該沒問題的;
忽然想到了useEffect;
於是動手開始實驗:

       useEffect(()=>{
           setDataInfo(dataId);
        },[dataId]);

好簡單的說.

 

 





免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM