深入探讨Redux中的`createStore`

深入探讨Redux中的`createStore`

💡 原文英文,约700词,阅读约需3分钟。
📝

内容提要

Redux的createStore是核心组件,负责创建Redux存储。它接受reducer(必需的纯函数)、preloadedState(可选的初始状态)和enhancer(扩展存储功能)。createStore有四种调用方式,通过类型检查区分preloadedState和enhancer。store提供getState、subscribe和dispatch等方法,并支持动态替换reducer。理解createStore对掌握Redux至关重要。

🎯

关键要点

  • Redux的createStore是Redux架构的核心组件,负责创建Redux存储。
  • createStore接受三个参数:reducer(必需)、preloadedState(可选)和enhancer(可选)。
  • createStore有四种调用方式,Redux通过类型检查区分preloadedState和enhancer。
  • 如果reducer不是函数,Redux会抛出错误,因为reducer是存储逻辑的核心。
  • enhancer是存储自定义器,用于增强存储的行为。
  • store提供getState、subscribe和dispatch等方法,支持动态替换reducer。
  • subscribe方法注册回调,在每次dispatch后调用,返回一个取消订阅的函数。
  • dispatch是更新状态的唯一方式,负责将动作转发给reducer并通知订阅者。
  • legacy_createStore用于避免弃用警告,但不推荐直接使用createStore。
  • 理解createStore对掌握Redux至关重要,Redux Toolkit也使用createStore构建存储。
➡️

继续阅读