【问题标题】:Exclude redux-form reducer from main store从主存储中排除 redux-form reducer
【发布时间】:2020-08-21 22:25:31
【问题描述】:
import { combineReducers } from 'redux'
import { reducer as form } from 'redux-form'

combineReducers({
 router: connectRouter(history),
 form,
 ....
 // huge amount of other reducers
})

您可以在上面看到reducers 合并为一个store。它变得越大越慢,因为在每个动作上它应该像开始时一样进行更多的检查。如您所见,我在表单中使用redux-form 处理state。当我输入redux-form 字段时,它开始变得越来越慢。我想知道是否有任何方法可以为redux-form 创建一些单独的商店,并防止这种情况变慢。或者这个问题是否存在其他解决方案?

【问题讨论】:

  • 你怎么知道你的性能问题与 redux 存储大小有关?您是否尝试过暂时排除其他减速器并测量性能?

标签: redux store redux-form


【解决方案1】:

使用redux,您可以拥有多个商店。
redux-form 正在使用来自react-reduxconnect API 从商店获取信息。

使用 React Redux,由 connect() 函数生成的包装类实际上会查找 props.store(如果存在),但最好将根组件包装进去,让 React Redux 担心将存储向下传递。这样组件就不必担心导入 store 模块,并且隔离 Redux 应用或启用服务器渲染更容易以后做。

https://redux.js.org/faq/store-setup#can-or-should-i-create-multiple-stores-can-i-import-my-store-directly-and-use-it-in-components-myself

我是redux-form 的合作者。

【讨论】:

    猜你喜欢
    • 2017-09-28
    • 1970-01-01
    • 2019-07-27
    • 2018-10-02
    • 1970-01-01
    • 2017-04-03
    • 2018-09-26
    • 1970-01-01
    • 2019-02-21
    相关资源
    最近更新 更多