请解释 Redux 中的 store 指的是什么?
考察说明
考察对 Redux 核心概念的掌握,特别是 store 的定义、职责和作用。
回答思路
- 【回答框架 1】store 是 Redux 中保存整个应用状态(state)的唯一对象,它是一个 JavaScript 对象,通过 createStore 创建,并提供 getState、dispatch、subscribe 等核心方法。
- 【回答框架 2】Redux 强调单一数据源,整个应用的 state 被存储在唯一的一个 store 中,这有利于状态集中管理、调试和追踪。
- 【回答框架 3】store 的主要职责包括:保存 state、提供获取 state 的接口、提供派发 action 的接口(dispatch)、以及允许通过 subscribe 订阅状态变化。
- 【回答框架 4】需要注意的是,store 本身不是与 React 直接绑定的,它独立于 UI 层,可以通过 react-redux 的 Provider 和 connect 或 useSelector 等 API 与 React 组件连接。
- 【关键点 1】store 是 Redux 中保存应用唯一状态的对象。
- 【关键点 2】store 提供 getState 获取当前状态,dispatch 分发 action,subscribe 订阅变化。
- 【关键点 3】单一数据源原则使得状态管理可预测、易调试。
- 【易错点 1】store 是单一对象,但不能直接修改其中 state,需通过 reducer 返回新状态。
- 【易错点 2】store 与 React 状态(组件 state)不同,Redux 的 store 是全局的,而组件 state 是局部的。
- 【易错点 3】不要将 store 与浏览器的 localStorage 混淆,store 是内存中的状态,localStorage 是持久化存储。