搜尋

首頁  >  問答  >  主體

javascript - 關於redux異步的疑惑

react中可以在鉤子就能處理ajax非同步請求,為什麼還要在redux裡面用中間件去處理呢? 2者有什麼不同?

黄舟黄舟2827 天前670

全部回覆(1)我來回復

  • 伊谢尔伦

    伊谢尔伦2017-05-19 10:38:40

    對於小型的WebApp,狀態比較少,你可以只用ReactJS來實現,在事件回呼裡發起AJAX請求,請求成功後更新ReactJS 元件的state,從而更新視圖。

    但是在較大規模的WebApp中,模組多,狀態多,這時就需要引入Redux來管理整個WebApp的狀態,ReactJS只用作View層以及根據用戶觸發的事件來dispatch相應的Action,不會有業務相關的邏輯。

    這時Ajax請求就會放到Action裡處理,但是Redux預設只能分發Plain Object作為Action,加上redux-thunk中間件後,就可以分發函數作為一個Action,函數裡就可以做你想幹的事情,當然也可以發起Ajax請求來支援非同步事件了。

    回覆
    0
  • 取消回覆