本篇主要將react全家桶的產品非常精煉的提取了核心內容,精華程度堪比精油。各位大人,既然來了,客官您坐,來人,給客官看茶~~
前言
首先,本篇文章要求您對js,react等知識有一定的了解,如果不曾了解,建議您先看一下:React精髓!一篇全概括(急速)
React有props和state:
這就意味著如果是一個數據狀態非常復雜的應用,更多的時候發現React根本無法讓兩個組件互相交流,使用對方的數據,react的通過層級傳遞數據的這種方法是非常難受的,這個時候,迫切需要一個機制,把所有的state集中到組件頂部,能夠靈活的將所有state各取所需的分發給所有的組件,是的,這就是redux
簡介
使用步驟
創建reducer
可以使用單獨的一個reducer,也可以將多個reducer合并為一個reducer,即:combineReducers() action發出命令后將state放入reucer加工函數中,返回新的state,對state進行加工處理創建action
用戶是接觸不到state的,只能有view觸發,所以,這個action可以理解為指令,需要發出多少動作就有多少指令 action是一個對象,必須有一個叫type的參數,定義action類型創建的store,使用createStore方法
store 可以理解為有多個加工機器的總工廠 提供subscribe,dispatch,getState這些方法。按步驟手把手實戰。
上述步驟,對應的序號,我會在相關代碼標出
npm install redux -S // 安裝import { createStore } from 'redux' // 引入const reducer = (state = {count: 0}, action) => {----------> ⑴ switch (action.type){ case 'INCREASE': return {count: state.count + 1}; case 'DECREASE': return {count: state.count - 1}; default: return state; }}const actions = {---------->⑵ increase: () => ({type: 'INCREASE'}), decrease: () => ({type: 'DECREASE'})}const store = createStore(reducer);---------->⑶store.subscribe(() => console.log(store.getState()));store.dispatch(actions.increase()) // {count: 1}store.dispatch(actions.increase()) // {count: 2}store.dispatch(actions.increase()) // {count: 3}
新聞熱點
疑難解答
圖片精選