- Redux Tutorial
- Redux - Home
- Redux - Overview
- Redux - Installation
- Redux - Core Concepts
- Redux - Data Flow
- Redux - Store
- Redux - Actions
- Redux - Pure Functions
- Redux - Reducers
- Redux - Middleware
- Redux - Devtools
- Redux - Testing
- Redux - Integrate React
- Redux - React Example
- Redux Useful Resources
- Redux - Quick Guide
- Redux - Useful Resources
- Redux - Discussion
Redux - 商店
store 是 Redux 中的一棵不可变的对象树。存储是保存应用程序状态的状态容器。Redux 在您的应用程序中只能有一个存储。每当在 Redux 中创建 store 时,您都需要指定化简器。
让我们看看如何使用 Redux 中的createStore方法创建一个 store 。需要从支持商店创建过程的 Redux 库导入 createStore 包,如下所示 -
import { createStore } from 'redux'; import reducer from './reducers/reducer' const store = createStore(reducer);
createStore 函数可以具有三个参数。以下是语法 -
createStore(reducer, [preloadedState], [enhancer])
减速器是一个返回应用程序下一个状态的函数。preloadedState 是一个可选参数,是应用程序的初始状态。增强器也是一个可选参数。它将帮助您通过第三方功能增强商店。
商店具有以下三个重要方法 -
获取状态
它可以帮助您检索 Redux 存储的当前状态。
getState 的语法如下 -
store.getState()
派遣
它允许您调度一个操作来更改应用程序中的状态。
调度的语法如下 -
store.dispatch({type:'ITEMS_REQUEST'})
订阅
它可以帮助您注册 Redux 存储在分派操作时调用的回调。一旦 Redux 状态更新,视图就会自动重新渲染。
调度的语法如下 -
store.subscribe(()=>{ console.log(store.getState());})
请注意,订阅函数返回一个用于取消订阅侦听器的函数。要取消订阅侦听器,我们可以使用以下代码 -
const unsubscribe = store.subscribe(()=>{console.log(store.getState());}); unsubscribe();