【问题标题】:React Component not connected to Redux StoreReact 组件未连接到 Redux Store
【发布时间】:2017-12-17 15:07:29
【问题描述】:

我希望我的导航组件监听 redux 存储,以便在用户登录时将登录按钮更改为注销按钮,但导航组件无权访问状态

我是 React 新手,如果需要提供更多信息,请告诉我

在 app.jsx 我有:

ReactDOM.render(
  <Provider store={store}>
    <Router history={hashHistory}>
      <Route path="/" component={Main}>
        <IndexRoute component={Menu}/>
        <Route path="about" component={About}/>
        <Route path="item/:id" component={Item}/>
        <Route path="login" component={Login}/>
      </Route>
    </Router>
  </Provider>,
  document.getElementById('app')
);

在 Main 中,我这样渲染子项和 Navigation:

var Main = (props) => {
  return (
    <div>
      <Navigation/>
      <div className="container">
        {props.children}
      </div>
    </div>
  );
}

在我的所有组件中,除了导航之外,我都可以通过 this.props 访问我的 redux 存储/状态。

当我在导航组件中记录 this.props 时,我得到:

 Object {dispatch: function}

但在菜单组件中我得到:

Object {history: Object, location: Object, params: Object, route: Object, routeParams: Object…}

【问题讨论】:

    标签: reactjs redux


    【解决方案1】:

    我猜你的商店是错误的。商店=创建商店(rootReducer)?忘记连接组件了?

    【讨论】:

    • 哇,哈哈。我的商店是正确的,我已经连接了它,但我没有通过连接传递状态。我认为它必须不将导航渲染为孩子。感谢您发现我的愚蠢错误
    猜你喜欢
    • 2020-05-05
    • 1970-01-01
    • 2019-12-26
    • 2016-11-11
    • 2018-08-25
    • 2017-06-03
    • 2017-06-23
    • 1970-01-01
    • 2016-04-02
    相关资源
    最近更新 更多