React工作原理:
React 會(huì)創(chuàng)建一個(gè)虛擬 DOM(virtual DOM)。當(dāng)一個(gè)組件中的狀態(tài)改變時(shí),React 首先會(huì)通過(guò) "diffing" 算法來(lái)標(biāo)記虛擬 DOM 中的改變,第二步是調(diào)節(jié)(reconciliation),會(huì)用 diff 的結(jié)果來(lái)更新 DOM。
何為 redux??Redux詳解
Redux 的基本思想是整個(gè)應(yīng)用的 state 保持在一個(gè)單一的 store 中。store 就是一個(gè)簡(jiǎn)單的 javascript 對(duì)象,而改變應(yīng)用 state 的唯一方式是在應(yīng)用中觸發(fā) actions,然后為這些 actions 編寫 reducers 來(lái)修改 state。整個(gè) state 轉(zhuǎn)化是在 reducers 中完成,并且不應(yīng)該有任何副作用。
在 Redux 中,何為 store
Store 是一個(gè) javascript 對(duì)象,它保存了整個(gè)應(yīng)用的 state。與此同時(shí),Store 也承擔(dān)以下職責(zé):
允許通過(guò)getState()訪問(wèn) state
運(yùn)行通過(guò)dispatch(action)改變 state
通過(guò)subscribe(listener)注冊(cè) listeners
通過(guò)subscribe(listener)返回的函數(shù)處理 listeners 的注銷
何為 action
Actions 是一個(gè)純 javascript 對(duì)象,它們必須有一個(gè) type 屬性表明正在執(zhí)行的 action 的類型。實(shí)質(zhì)上,action 是將數(shù)據(jù)從應(yīng)用程序發(fā)送到 store 的有效載荷。
何為 reducer
一個(gè) reducer 是一個(gè)純函數(shù),該函數(shù)以先前的 state 和一個(gè) action 作為參數(shù),并返回下一個(gè) state。
Redux Thunk 的作用是什么
Redux thunk 是一個(gè)允許你編寫返回一個(gè)函數(shù)而不是一個(gè) action 的 actions creators 的中間件。如果滿足某個(gè)條件,thunk 則可以用來(lái)延遲 action 的派發(fā)(dispatch),這可以處理異步 action 的派發(fā)(dispatch)。
何為純函數(shù)(pure function)
一個(gè)純函數(shù)是一個(gè)不依賴于且不改變其作用域之外的變量狀態(tài)的函數(shù),這也意味著一個(gè)純函數(shù)對(duì)于同樣的參數(shù)總是返回同樣的結(jié)果。