Redux 从<;输入类型=文本>;

Redux 从<;输入类型=文本>;,redux,textfield,Redux,Textfield,我正在编写一个简单的redux应用程序,其中一个组件如下所示 const LoginComponent = ({onLoginClick, onRegisterClick}) => ( <div className={styles.loginDiv}> <p className={standardStyles.pageTitleText}>SyncSpace</p> <input type="text" pl

我正在编写一个简单的redux应用程序,其中一个组件如下所示

const LoginComponent = ({onLoginClick, onRegisterClick}) => (
    <div className={styles.loginDiv}>
        <p className={standardStyles.pageTitleText}>SyncSpace</p>
        <input type="text" placeholder="Username"/>
        <input type="password" placeholder="Password"/>
        <div className={styles.loginRegisterDiv}>
            <button className={styles.loginButton} onClick={onLoginClick}>Login</button>
            <button className={styles.registerButton} onClick={onRegisterClick}>Register</button>
        </div>

    </div>
);
constlogincomponent=({onLoginClick,onRegisterClick})=>(

SyncSpace

登录 登记 );

在click事件中,我想读取用户名和密码字段中键入的值,并将它们作为参数传递给onLoginClick事件。在Redux中读取此值的正确方法是什么?

我建议查看

这是一个非常活跃的项目,有一个很好的社区来回答任何问题

下面是一个如何使用的示例

使用redux表单,您可以将表单更改为以下内容:

import React from 'react';
import { Field, reduxForm } from 'redux-form';

const LoginComponent = ({onRegisterClick, onLoginClick}) => (
  <form onSubmit={onRegisterClick} className={styles.loginDiv}>
      <p className={standardStyles.pageTitleText}>SyncSpace</p>
      <Field name="userName" component="input" type="text" placeholder="Username"/>
      <Field name="password" component="input" type="password" placeholder="Password"/>
      <div className={styles.loginRegisterDiv}>
        <button type="submit" className={styles.loginButton}>Login</button>
      </div>
  </form>
);
从“React”导入React;
从“redux form”导入{Field,reduxForm};
const LoginComponent=({onRegisterClick,onLogincClick})=>(

SyncSpace

登录 );

我个人更喜欢在两个单独的视图上进行注册和登录操作,但是如果您选择在redux表单中使用两个按钮,那么有多种方法可以做到这一点

我建议看一看

这是一个非常活跃的项目,有一个很好的社区来回答任何问题

下面是一个如何使用的示例

使用redux表单,您可以将表单更改为以下内容:

import React from 'react';
import { Field, reduxForm } from 'redux-form';

const LoginComponent = ({onRegisterClick, onLoginClick}) => (
  <form onSubmit={onRegisterClick} className={styles.loginDiv}>
      <p className={standardStyles.pageTitleText}>SyncSpace</p>
      <Field name="userName" component="input" type="text" placeholder="Username"/>
      <Field name="password" component="input" type="password" placeholder="Password"/>
      <div className={styles.loginRegisterDiv}>
        <button type="submit" className={styles.loginButton}>Login</button>
      </div>
  </form>
);
从“React”导入React;
从“redux form”导入{Field,reduxForm};
const LoginComponent=({onRegisterClick,onLogincClick})=>(

SyncSpace

登录 );

我个人更喜欢在两个单独的视图上进行注册和登录操作,但是如果您选择在redux表单中使用两个按钮,那么有多种方法可以做到这一点

Redux形式是过度的。您肯定不需要任何类型的库来阅读表单

这实际上不是一个重复的问题,特别是-这是一个反应问题。在React中有两种处理表单值的方法:“受控”输入和“非受控”输入。当您询问“如何在单击时读取值”时,对于非受控输入,答案是“使用参考从输入本身读取值”,对于受控输入,答案是“从组件状态读取值”


Gosha Arinich有几篇文章解释了如何在React中使用表单的基本知识,我强烈建议您先通读这些内容:。他们解释了“受控”和“非受控”输入的概念,以及如何使用它们。(Gosha还刚刚发布了一本关于表单和React的好书,我也推荐这本书。它比博客帖子更详细:)。

Redux表单太过分了。您肯定不需要任何类型的库来阅读表单

这实际上不是一个重复的问题,特别是-这是一个反应问题。在React中有两种处理表单值的方法:“受控”输入和“非受控”输入。当您询问“如何在单击时读取值”时,对于非受控输入,答案是“使用参考从输入本身读取值”,对于受控输入,答案是“从组件状态读取值”

Gosha Arinich有几篇文章解释了如何在React中使用表单的基本知识,我强烈建议您先通读这些内容:。他们解释了“受控”和“非受控”输入的概念,以及如何使用它们。(Gosha还刚刚发布了一本关于表单和React的好书,我也推荐这本书。它比博客帖子更详细:)