日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達(dá)者為師

網(wǎng)站首頁 編程語言 正文

react?redux的原理以及基礎(chǔ)使用講解_React

作者:web前端?zxp ? 更新時間: 2022-09-30 編程語言

介紹

為什么會使用 redux?

vue 是一個 MVVM層,可以實(shí)現(xiàn) 雙向數(shù)據(jù)綁定,而 react 只能算一個 view 層,狀態(tài)改變了只有去調(diào)用setState({xxx}) 才能去修改視圖,當(dāng)我們數(shù)據(jù)很復(fù)雜的時候可能需要用到 redux

什么時候該使用 redux?

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

只有遇到 React 實(shí)在解決不了的問題,你才需要 Redux

redux使用場景

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

redux 作用

Web 應(yīng)用是一個狀態(tài)機(jī),視圖與狀態(tài)是一一對應(yīng)的(有一方改變另一方也會改變)。

所有的狀態(tài),保存在一個對象里面

工作流程

使用

1.下載

yarn add redux

2.創(chuàng)建倉庫store骨架

按圖示創(chuàng)建即可

3.生成倉庫

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

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

4.參數(shù)函數(shù)的創(chuàng)建 reducer

可以接收之前的狀態(tài) 和 action ,最終返回一個新狀態(tài)

需要定義一個純函數(shù)

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

5.引入reducer來輔助store的創(chuàng)建

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

原文鏈接:https://blog.csdn.net/qq_44163269/article/details/107341162

欄目分類
最近更新