Redux基本原理

2021-10-05 18:56:04 字數 1790 閱讀 7554

(1)redux store 儲存資料

(2)view 檢視元件可以利用store.getstate() 方法讀取值,也可以使用store.dispatch()方法改變redux store裡面的值的狀態,當資料發生變化時候,檢視層通過componentdidmount() 鉤子中實現store.subscribe()方法重新整理檢視層,進行資料互動

(3) dispatch()方法中的引數是action,然後action和currentstate一起進入到reducer中,結束的時候會返回乙個新new state(新的資料來源)進行儲存

redux是redux只是純粹的狀態管理器預設只能同步,而且只支援物件的形式,因此實現非同步需要一些中介軟體的支援redux-thunk 和redux-logger 對store.dispatch方法進行改造,需要在action和reducer之間新增其他功能

* * 實現redux的原理需要完成三個引數getstate獲取值,

* dispatch改變值,subscribe訂閱

* **/

// 負責儲存所有的state

// 第一步從redux 獲取createstore

// 掛載redux-thunk 和redux-logger 實現非同步

import thunk from 'redux-thunk'

import logger from 'redux-logger'

/** * 建立reducer 作用初始化state 和修改規則

* reducer是純函式不可以console.log

* */

function counterreducer(state = 0, action)

}// 第三步定義乙個store接收createstore方法將counterreducer作為引數傳入

// 匯出store

export default store

reduxpage.js

// reduxpage

import react, from 'react'

// 引入store

import store from '../store'

export default class reduxpage extends component )

} /**

* 只要componentdidmount()裡面有訂閱

* 那隨後的componentwillunmount()裡面需要取消訂閱

* **/

componentwillunmount()

} // 實現非同步

asyncmethod = () => )

}, 1000)

})}

render()

store.dispatch()}>

add實現非同步)}}

array.prototype.reduce()方

Redux基本原理和使用

redux不是說任何的應用都要用到它,如果遇到了react解決不了得問題,可以考慮使用它。例如 使用者的使用方式複雜 不同身份的使用者有不同的使用方式 比如普通使用者和管理員 多個使用者之間可以協作 與伺服器大量互動,或者使用了websocket view要從多個 獲取資料 redux的設計思想 1...

mysql的基本原理 Mysql 基本原理

mysql 基本原理 mysql是一種關聯式資料庫管理系統,關聯式資料庫將資料儲存在不同的表中,而不是將所有資料放在乙個大倉庫內,這樣就增加了速度並提高了靈活性 ysql是資料庫登入命令 uroot預設超級使用者登入 p 預設沒密碼 中寫密碼 mysqladmin uroot password 12...

8 2 1 基本原理

乙個舞台動畫物件在包含許多舞台資訊 出現在何處,佔多大面積,處在什麼角度,是否可見 這些資訊分別儲存在動畫物件的屬性中。在 中讀取這些屬性可以了解物件的位置 大小 角度等狀態資訊 修改這些屬性可以改變物件的位置 大小 角度等狀態。如果從資料的角度去理解,動畫就是在固定時間間隔點不斷修改動畫物件某項屬...