将 Redux 状态传递给 React 组件

黎明17

react-redux在我的应用程序中使用更流畅的数据流。在我的LoginPage组件中,为了简单起见,我使用纯组件。

const LoginPage = ({ auth, doLogin, doLogout }) => (

    <div>
      <NavBar auth={auth}/>
        <div className="row">
            <div style={{display: 'flex', justifyContent: 'center'}} className="col-md-4 col-md-offset-4">
                <LoginForm auth={auth} doLogin={doLogin} doLogout={doLogout}/>
            </div>
        </div>
      </div>

);

// Connects state to the props of this component
const mapStateToProps = state => ({
  auth: state.auth,
});

// Return a NEW component that is connected to the Store
export default connect(mapStateToProps, { doLogin, doLogout })(LoginPage);

这完全符合我的预期,但我尝试更改格式以不使用纯组件,因为我想做条件渲染(以在登录时显示不同的组件)。

现在它看起来如下:

const LoginComponent = ({ auth, doLogin, doLogout }) => (

    <div>
      <NavBar auth={auth}/>
        <div className="row">
            <div style={{display: 'flex', justifyContent: 'center'}} className="col-md-4 col-md-offset-4">
                <LoginForm auth={auth} doLogin={doLogin} doLogout={doLogout}/>
            </div>
        </div>
      </div>

);

class LoginPage extends React.Component {
    constructor(props) {
        super(props);
    }
    render() {
        return (
            <LoginComponent/>
        )
    }
}

我将其更改LoginPageLoginComponent并尝试LoginComponent在实际的 React 组件中进行渲染

但是,这给了我一个错误,说Cannot read property 'isLoggedIn' of undefined. isLoggedIn是 的一个元素auth

在我的第一个示例中,我可以auth通过执行传入const LoginPage = ({ auth, doLogin, doLogout }),但在auth更改为第二个示例时不确定如何传入

我怎样才能做到这一点?

罗斯艾伦

像处理任何其他 React 组件一样,将 props 传递给无状态的函数式组件。现在道具没有被传递给LoginComponent,所以他们将永远是undefined

class LoginPage extends React.Component {
    constructor(props) {
        super(props);
    }
    render() {
        return (
            <LoginComponent
              auth={this.props.auth}
              doLogin={this.props.doLogin}
              doLogout={this.props.doLogout}
            />
        )
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将状态传递给React / Redux中的递归嵌套组件

来自分类Dev

将组件状态传递给 redux-form

来自分类常见问题

将道具传递给react-redux容器组件

来自分类Dev

Redux 无法将 store 传递给 React 组件

来自分类Dev

将 props 传递给高阶无状态功能 React 组件

来自分类Dev

使用 React 将索引作为状态传递给组件

来自分类Dev

将数组传递给 React 无状态组件

来自分类Dev

React Redux传递状态作为组件的道具

来自分类Dev

React Native - 如何将状态从组件传递给它的父组件

来自分类Dev

React Redux-无法使用将组件的方法传递给子代-未定义错误

来自分类Dev

React-Redux存储或将prop中的api传递给组件,这是更好的方法

来自分类Dev

将函数从 mapDispatchToProps 传递给 react/redux 应用程序中的容器组件

来自分类Dev

将 props 传递给包装在变量中的 react-redux 组件

来自分类Dev

如何将 const 传递给多个组件/拆分 React-Redux-Router 文件

来自分类Dev

React:将 formData 道具合并到组件的状态(Redux)

来自分类Dev

使用react-redux,通过redux状态将回调函数传递给通用组件的最佳实践是什么?

来自分类Dev

如何将状态传递给组件?

来自分类Dev

如何将状态传递给组件?

来自分类Dev

如何将组件 props 从 React 传递到 Redux?

来自分类Dev

React-如何将状态传递给另一个组件

来自分类Dev

如何将状态className变量传递给React中的另一个组件

来自分类Dev

如何使用react-router将顶级组件状态传递给Routes?

来自分类Dev

React Native-将状态传递给另一个组件

来自分类Dev

使用 React Router 时如何将方法和状态传递给嵌套组件?

来自分类Dev

React:将功能传递给子组件

来自分类Dev

将React Route传递给子组件

来自分类Dev

将函数传递给React中的组件

来自分类Dev

React js将props传递给组件

来自分类Dev

将参数传递给React组件

Related 相关文章

  1. 1

    将状态传递给React / Redux中的递归嵌套组件

  2. 2

    将组件状态传递给 redux-form

  3. 3

    将道具传递给react-redux容器组件

  4. 4

    Redux 无法将 store 传递给 React 组件

  5. 5

    将 props 传递给高阶无状态功能 React 组件

  6. 6

    使用 React 将索引作为状态传递给组件

  7. 7

    将数组传递给 React 无状态组件

  8. 8

    React Redux传递状态作为组件的道具

  9. 9

    React Native - 如何将状态从组件传递给它的父组件

  10. 10

    React Redux-无法使用将组件的方法传递给子代-未定义错误

  11. 11

    React-Redux存储或将prop中的api传递给组件,这是更好的方法

  12. 12

    将函数从 mapDispatchToProps 传递给 react/redux 应用程序中的容器组件

  13. 13

    将 props 传递给包装在变量中的 react-redux 组件

  14. 14

    如何将 const 传递给多个组件/拆分 React-Redux-Router 文件

  15. 15

    React:将 formData 道具合并到组件的状态(Redux)

  16. 16

    使用react-redux,通过redux状态将回调函数传递给通用组件的最佳实践是什么?

  17. 17

    如何将状态传递给组件?

  18. 18

    如何将状态传递给组件?

  19. 19

    如何将组件 props 从 React 传递到 Redux?

  20. 20

    React-如何将状态传递给另一个组件

  21. 21

    如何将状态className变量传递给React中的另一个组件

  22. 22

    如何使用react-router将顶级组件状态传递给Routes?

  23. 23

    React Native-将状态传递给另一个组件

  24. 24

    使用 React Router 时如何将方法和状态传递给嵌套组件?

  25. 25

    React:将功能传递给子组件

  26. 26

    将React Route传递给子组件

  27. 27

    将函数传递给React中的组件

  28. 28

    React js将props传递给组件

  29. 29

    将参数传递给React组件

热门标签

归档