1、安裝
npm install redux-thunk
2、引入,在store檔案下,index中引入
import reducer from './reducer'
import thunk from 'redux-thunk';
const store = createstore(
reducer,
);//建立公共倉庫
export default store;
3、在actioncreators.js
export const gettodolist = () => )
.catch(() => {})
}}
4、在元件中的componentdidmount中
const action=gettodolist()//因為用了redux-thunk中介軟體,所以這裡返回的是乙個函式
store.dispatch(action)//當執行這個方法的時候,返回的這個函式會自動執行,也就是去請求資料了,
實質上是對dispatch方法的乙個封裝。之前action是乙個物件,現在action可以是乙個函式,
如果傳遞過來的是乙個物件,dispatch會將這個物件直接傳給store。但是如果傳過來乙個函式,它會讓函式先執行,執行完,需要呼叫store才會去呼叫。dispatch會根據不同的引數執行不行的事情
redux 中介軟體 redux thunk
什麼是中介軟體?中介軟體指的是redux的,不是react的。中間指的是action跟store之間,也就是對dispacth方的封裝,最原始的是直接將接受過來的物件直接傳遞給store,但是如果傳遞的是乙個函式的話,就不會將這直接傳遞給store,而是先執行這個函式。常見的中間有 redux de...
redux中介軟體 redux thunk
redux中介軟體 redux thunk 通常情況下,action只是乙個物件,不能包含非同步操作,這導致了很多建立action的邏輯只能寫在元件中,量較多也不便於復用,同時對該部分 測試的時候也比較困難,元件的業務邏輯也不清晰,使用中介軟體了之後,可以通過actioncreator非同步編寫ac...
redux中介軟體之redux thunk
redux的核心概念其實很簡單 將需要修改的state都存入到store裡,發起乙個action用來描述發生了什麼,用reducers描述action如何改變state tree 建立store的時候需要傳入reducer,真正能改變store中資料的是store.dispatch api。disp...