react 使用 redux 的時候 用 ref獲取子組件的state


由於 redux是無狀態的,所以當我們在子組件中使用了 redux的時候,再父組件中,使用  ref 來獲取子組件的state時,發現為一個空對象。

其實這個是有解決方案法的,原因在於 我們使用的 redux里面的 connect 是有四個參數的

前兩個經常用,文檔也比較多,這里就不說了

connect([mapStateToProps], [mapDispatchToProps], [mergeProps], [options])

 

這里直接說第三個參數,

mergeProps(stateProps, dispatchProps, ownProps) 該參數非必須,redux默認會幫你把更新維護一個新的props對象,類似調用Object.assign({}, ownProps, stateProps, dispatchProps)。

當不想傳第三個參數時可以傳  null

 

重點在第四個參數

options, 通過查看源碼,可以看見

 

所以,我們可以在子組件中

 

 父組件中

 

 這樣既可獲取原來有狀態的子組件


免責聲明!

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



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