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中,是否仍然可以检索父组件的值??您正在谈论的值是什么?抱歉。。。我想的太复杂了,当它可以很容易地解决。。。