Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 获取其他组件React.js的值_Reactjs - Fatal编程技术网

Reactjs 获取其他组件React.js的值

Reactjs 获取其他组件React.js的值,reactjs,Reactjs,我在我的Login.js中有此代码: <div className="row justify-content-start"> <form className="form-signin"> <PageDetailsHeading name="Please Log-In to continue"/> <EmailField/>

我在我的
Login.js
中有此代码:

<div className="row justify-content-start">
                <form className="form-signin">
                    <PageDetailsHeading name="Please Log-In to continue"/>
                    <EmailField/>
                    <PasswordField/>
                    <ButtonActor name="Log In" isPrimaryButton="true"/>
                </form>
            </div>

您只需要在
Login
组件中维护状态

state={email:''}
您还需要在
Login
组件中仅使用
onChange
处理程序和
onClick
,并将它们分别传递给
EmailField
buttonator

onEmailChange = (e) =>{
  this.setState({[e.target.name]:e.target.value})
}

将函数传递给组件

<EmailField onEmailChange={this.onEmailChange}/>
<ButtonActor name="Log In" isPrimaryButton="true" onButtonClick={this.onButtonClick}/>
<div className="form-label-group">
   <input type="email" id="inputEmail" className="form-control" placeholder="Email address" required autoFocus onChange={this.props.onEmailChange} name="email"/> //notice attribute `name`
   <label htmlFor="inputEmail">Email address</label>
</div>
<button onClick={this.props.onButtonClick}>Log In</button>
buttonator
组件

<EmailField onEmailChange={this.onEmailChange}/>
<ButtonActor name="Log In" isPrimaryButton="true" onButtonClick={this.onButtonClick}/>
<div className="form-label-group">
   <input type="email" id="inputEmail" className="form-control" placeholder="Email address" required autoFocus onChange={this.props.onEmailChange} name="email"/> //notice attribute `name`
   <label htmlFor="inputEmail">Email address</label>
</div>
<button onClick={this.props.onButtonClick}>Log In</button>
登录

您可以通过提及组件状态来提供这一点。

您在哪个组件中存储您的状态?在
电子邮件字段中
在父组件中提升您的状态,在Login.jsBtw中,是否仍然可以检索父组件的值??您正在谈论的值是什么?抱歉。。。我想的太复杂了,当它可以很容易地解决。。。