代码之家  ›  专栏  ›  技术社区  ›  user2024080

`组合传感器“—无法理解需求和用法

  •  1
  • user2024080  · 技术社区  · 8 年前

    我在用 flux .我用过 combineReducers -一切都好。但使用的目的是什么 组合传感器 在redux?

    有人通过更新代码来帮助我理解吗?

    1. 我为什么要合并减速机?
    2. 如果我不使用,会产生什么影响?

    这是我的代码:

    import { combineReducers } from "redux";
    import rootReducer from "./countAddReducer";
    
    export default combineReducers({
      value: rootReducer
    });
    

    Live Demo with sample app

    2 回复  |  直到 8 年前
        1
  •  1
  •   McRist    8 年前

    combineReducers 用于将所有还原器合并到一个存储对象中,以便可以在每个组件中使用。

    在flux中,您将有不同的flux存储来管理不同的状态。使用Redux时,只有一个存储,但是CombineReducer可以帮助您在Redux之间保持相同的逻辑划分。

    在你的例子中,

    export default combineReducers({
      value: rootReducer,
      removes: countRemoveReducer
    });
    

    你有两个减速器 rootReducer 和 countRemoveReducer ,然后将这两种方法结合起来,使其在components connect()方法中可用,如下所示: mapStateToProps 哪里 MapStateTops 有一个包含这两个减缩器的状态对象。

    现在,如果你想在两个减速器之间共享状态,那么我们不能用 组合传感器 .为此我们需要 redux-thunk .

    我已经更新了你的密码, https://codesandbox.io/s/lq87v947

        2
  •  0
  •   Alister    7 年前

    信息技术 分裂国家 对应于一个特定的减缩成自己的对象。

    例子:

    import { combineReducers } from "redux";
    import userReducer from "./userReducer";
    import blogPost from "./blogReducer";
    
    export default combineReducers({
      user: userReducer,
      blogPost: blogReducer,
    });
    

    当您开始向userReducer或blogReducer分配操作时,全局redux状态只是一个对象,但该对象如下所示。

    const reduxState = {
        user: {
            //state created by userReducer will go in here 
        },
        blogPost: {
            //state created by blogReducer will go in here
        }
    }
    
    推荐文章