Redux的作者友情贊助,封裝了一個 React 專用的庫 React-Redux
,為 React + Redux 提供了一種更科學(xué)的代碼組織方式。
本人認(rèn)為React-Redux
的中心思想就是實現(xiàn)Model
與View
的分離。它將所有組件分成兩大類:
UI組件(View層)
只負(fù)責(zé) UI 的呈現(xiàn),不帶有任何業(yè)務(wù)邏輯
沒有狀態(tài)(即不使用this.state這個變量)
所有數(shù)據(jù)都由參數(shù)(this.props)提供
不使用任何 Redux 的 API
容器組件(Model層)
負(fù)責(zé)管理數(shù)據(jù)和業(yè)務(wù)邏輯,不負(fù)責(zé) UI 的呈現(xiàn)
帶有內(nèi)部狀態(tài)
使用 Redux 的 API
這樣以來也實現(xiàn)了Redux和React分離,UI組件只要書寫react的代碼,容器組件只負(fù)責(zé)書寫redux相關(guān)操作,易于書寫與維護(hù)。
react-redux主要提供了倆個關(guān)鍵API:Provider組件 和 connect函數(shù)。