react redux的原理以及基礎使用講解

介紹

為什麼會使用 redux?

vue 是一個 MVVM層,可以實現 雙向數據綁定,而 react 隻能算一個 view 層,狀態改變瞭隻有去調用setState({xxx}) 才能去修改視圖,當我們數據很復雜的時候可能需要用到 redux

什麼時候該使用 redux?

如果你不知道是否需要 Redux,那就是不需要它

隻有遇到 React 實在解決不瞭的問題,你才需要 Redux

redux使用場景

用戶的使用方式復雜不同身份的用戶有不同的使用方式(比如普通用戶和管理員)多個用戶之間可以協作與服務器大量交互,或者使用瞭WebSocketView要從多個來源獲取數據

redux 作用

Web 應用是一個狀態機,視圖與狀態是一一對應的(有一方改變另一方也會改變)。

所有的狀態,保存在一個對象裡面

工作流程

使用

1.下載

yarn add redux

2.創建倉庫store骨架

按圖示創建即可

3.生成倉庫

import { createStore } from 'redux';
const store = createStore(fn);

通過 creatStore 方法接收一個函數作為參數,最終返回一個倉庫

4.參數函數的創建 reducer

可以接收之前的狀態 和 action ,最終返回一個新狀態

需要定義一個純函數

const reducer = (prevState,action)=>{
    let newState = prevState.todos.slice()
    return newState
}
export default  reducer

5.引入reducer來輔助store的創建

const store = createStore(reducer);

完整代碼展示

//  store/index.js
import { createStore } from 'redux';
import reducer from "./reducer"
const store = createStore(reducer);
export default store
// store/reducer.js
const reducer = (prevState,action)=>{
    let newState = prevState.todos.slice()
    return newState
}
export default  reducer

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。

推薦閱讀: