• <del id="a8uas"></del>
    • 千鋒教育-做有情懷、有良心、有品質的職業教育機構

      400-811-9990
      手機站
      千鋒教育

      千鋒學習站 | 隨時隨地免費學

      千鋒教育

      掃一掃進入千鋒手機站

      領取全套視頻
      千鋒教育

      關注千鋒學習站小程序
      隨時隨地免費學習課程

      上海
      • 北京
      • 鄭州
      • 武漢
      • 成都
      • 西安
      • 沈陽
      • 廣州
      • 南京
      • 深圳
      • 大連
      • 青島
      • 杭州
      • 重慶
      當前位置:合肥千鋒IT培訓  >  技術干貨  >  Redux解決了什么問題?是如何工作的?

      Redux解決了什么問題?是如何工作的?

      來源:千鋒教育
      發布人:qyf
      時間: 2023-02-14 17:22:46

      Redux解決了什么問題

        React框架這樣的純視圖的框架對組件通信、狀態共享等方面沒有太好的解決方案,只能利用狀態提升、context之類的技術方案來解決, 但是當組件結構、數據流向都比較復雜的時候,React本身的Api解決這樣的問題就有些吃力。

        此時就可以使用Flux、Redux這樣的架構方式來解決問題。

        我們之前的項目就在使用Redux,后來又有了rtk,讓redux在react組件中的使用更加方便,在一些小型的項目, 或者一些小模塊中, 利用useReducerHook來進行state與dispatch的構建,也能快速優雅的解決問題。

        之前的原生Redux中,真實項目開發中,往往需要搭配redux-thunk來進行異步action處理,以及react-redux來進行組件與store的連接, 如果不使用react-redux的話,會比較繁瑣。

        redux的結構分為store、Views、Actions、Reducer。

        Store中存儲的狀態在視圖中可以通過getState來獲取,也可以通過subscribe方法進行監聽,當視圖產生UI操作的時候, 可以調用actions的方法來生成action后,利用dispatch方法進行派發,此時reducer就會被調用,并且接收到當前的狀態與action對象, 經過計算出,返回新狀態,Store就會進行狀態的更新。

        利用react-redux后, 組件可以通過connect搭配mapStateToProps及mapDispatchToProps參數來獲取store中的狀態及actions中的方法。

        使用RTK之后,創建reducer更近方便,利用useSelector和useDispatch可以更快更高效取用狀態及派發action。

        對于一個小的場景,比如之前我做的注冊模塊有三個步驟,每個步驟都需要用到第一步用戶填寫的手機號等信息,這樣就形成了幾個小組件間的狀態共享, 如果使用父組件狀態提升會導致數據流向不清晰,也犯不上使用redux-store進行存儲,于是就是使用useReducer快速的創建了一個小的store,內部集成了state與dispatch,搭配Context,也能很高效的解決問題。

      聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。

      猜你喜歡LIKE

      unity快捷鍵大全

      2023-08-28

      unity射線檢測多個物體

      2023-08-28

      unity富文本字體大小

      2023-08-28

      最新文章NEW

      unity性能優化指標

      2023-08-28

      unity開發常用框架

      2023-08-28

      unity玻璃材質球

      2023-08-28

      相關推薦HOT

      更多>>

      快速通道 更多>>

      最新開班信息 更多>>

      網友熱搜 更多>>