第54节—— redux-toolkit中的configureStore

一、概念

configureStore是Redux Toolkit中的一个工厂函数,用于创建Redux store。它的目的是简化Redux store的设置,并提供许多默认设置和内置的中间件,使其更易于使用。

import { configureStore } from '@reduxjs/toolkit';

const store = configureStore({
  // 一系列选项
});

二、选项详解

1、reducer

reducer是必选项,指定应用程序的根reducer函数。可以是一个单独的reducer函数,也可以是由多个reducer函数组成的对象。如果传递一个对象,则每个键将映射到应用程序状态中的相应属性。

2、preloadedState

应用程序的初始状态。这可以是从服务器获取的数据或以其他方式获得的数据。简单理解为初始化的state

3、middleware

是一个数组,其中包含应用程序使用的所有中间件。默认情况下,configureStore将使用以下中间件

redux-thunk: 支持使用异步action创建函数

redux-immutable-state-invariant: 检查状态是否被修改

redux-logger: 记录Redux操作日志

4、devTools

一个布尔值,用于启用或禁用Redux DevTools。如果值为true,则可以使用Redux DevTools来查看应用程序状态和操作日志。默认为true。

5、enhancers

它是一个数组,其中包含一组enhancer函数。enhancer是一种功能强大的Redux工具,可以用于增强或修改Redux store的行为。可用于添加Redux中间件、增强Redux DevTools或使用其他工具。

6、replayThunk

它是一个布尔值,指示是否要重放thunk中的操作日志。如果设置为true,则Redux store将回放thunk操作的历史记录,以便应用程序状态在重新加载时与之前一致。默认为false

7、serializableCheck

它一个布尔值,用于启用或禁用Redux默认的序列化检查。序列化检查可确保Redux store的状态可以被序列化为JSON字符串,并在重启应用程序时保持不变。默认为true。

8、serializableCheckOptions

一个对象,其中包含用于自定义序列化检查的选项。可用于更改序列化检查的错误消息或更改允许的数据类型。

三、总结

configureStore函数是一个创建Redux store的快捷方式,为开发者提供了一些常用的设置和默认选项,从而加快了开发速度。在大多数情况下,使用默认设置就足够了,但如果需要自定义更多的选项,也可以通过传递一个选项对象来进行更改

你可能感兴趣的:(react,javascript,前端,react.js)