fetch
瀏覽器自帶的一種先後端數據處理的方式react
cnpm install whatwg-fetch --saveios
fetch(url,options).then((res)=>res.json()).then((data)=>{})ajax
特色:第一次返回的結構不是response 而是一個未處理的response集合npm
fetch也是基於promise的json
axios(url).then(()=>)redux
fetch(url,options)axios
options:
method:請求的方式
header:請求頭
body:當post請求的時候須要傳遞參數的地方(將傳遞的對象轉換成字符串形式的) 利用一下qs 第三方庫後端
fetch默認是不會攜帶Cookie的 若是想要設置cookie 須要在headers中設置credentials:include跨域
react中如何進行跨域promise
異步action
applyMiddleware:使用中間件處理異步的action
經常使用處理異步action的方式
redux-promise-middleware
1。引入
import reduxPromise from "redux-promise-middleware";
二、使用中間件
const store = createStore(reducer,applyMiddleware(reduxPromise));
三、處理異步的action
異步的action必需要在actionCreator中處理
type:"GET_MOVIE",
payload:new Promise(resolve=>{
//異步
fetchPolyfill("/ajax/movieOnInfoList?token=")
//未處理的結果集
.then((res)=>res.json())
.then((data)=>{
resolve(data);
})
})
redux-thunk
redux-saga
dva
在React中什麼叫作中間件?
action派發後state立馬作出修改 這叫同步
action派發後state不知道何時作修改 這個其實就是異步
中間件:請求和回覆之間的一個應用
React: action與reducer之間的一個應用