Reactjs 热以获取react中按钮的值
我有一个带有步骤名称、电子邮件和util的表单。 当有输入时,我可以得到插入的值,但当有输入按钮的选项为true或false时,我无法得到值 这是我的代码:Reactjs 热以获取react中按钮的值,reactjs,Reactjs,我有一个带有步骤名称、电子邮件和util的表单。 当有输入时,我可以得到插入的值,但当有输入按钮的选项为true或false时,我无法得到值 这是我的代码: class CreateData extends Component { state = { step: 1, nome:'', email:'', util: '', } nextStep = () => { const { step } = this.state this.setS
class CreateData extends Component {
state = {
step: 1,
nome:'',
email:'',
util: '',
}
nextStep = () => {
const { step } = this.state
this.setState({
step : step + 1
})
}
prevStep = () => {
const { step } = this.state
this.setState({
step : step - 1
})
}
handleChange = input => event => {
this.setState({
[input] : event.target.value,
})
}
renderSwitch(step) {
const { nome, email, util } = this.state;
const values = { nome, email, util};
switch (step) {
case 1:
return <UserName
nextStep = {this.nextStep}
handleChange = {this.handleChange}
values = {values}
/>
case 2:
return <UserEmail
nextStep = {this.nextStep}
prevStep = {this.prevStep}
handleChange = {this.handleChange}
values = {values}
/>
case 3:
return <UserUtil
nextStep = {this.nextStep}
prevStep = {this.prevStep}
handleChange = {this.handleChange}
values = {values}
/>
case 4:
return <CrossHomePage/>
}
}
render() {
const {step} = this.state;
return (
<div>
<HeaderPage />
{this.renderSwitch(step)}
</div>
);
}
}
export default CreateData
class CreateData扩展组件{
状态={
步骤:1,
诺姆:“,
电子邮件:“”,
util:“”,
}
下一步=()=>{
const{step}=this.state
这是我的国家({
步骤:步骤+1
})
}
prevStep=()=>{
const{step}=this.state
这是我的国家({
步骤:步骤-1
})
}
handleChange=input=>event=>{
这个.setState({
[输入]:event.target.value,
})
}
渲染器开关(步骤){
const{nome,email,util}=this.state;
常量值={nome,email,util};
开关(步骤){
案例1:
返回
案例2:
返回
案例3:
返回
案例4:
返回
}
}
render(){
const{step}=this.state;
返回(
{this.renderSwitch(步骤)}
);
}
}
导出默认CreateData
在“我的组件”中,获取名称是正确的:
class UserName extends Component{
saveAndContinue = (e) => {
e.preventDefault()
this.props.nextStep()
}
render(){
const { values } = this.props;
return(
<Grid className={style.container}>
<Form>
<fieldset>
<input
className="input"
onChange={this.props.handleChange('nome')}
defaultValue={values.nome}
type="text"
required
/>
</fieldset>
<Button className="button" onClick={this.saveAndContinue}> Continue </Button>
</Form>
</Grid>
)
}
}
export default UserName;
类用户名扩展组件{
saveAndContinue=(e)=>{
e、 预防默认值()
this.props.nextStep()
}
render(){
const{values}=this.props;
返回(
继续
)
}
}
导出默认用户名;
但是在我的组件中,获取按钮值不起作用,我想获取单击的按钮的值
<input
type="button"
className="input"
onChange={values.moradia[1]}
value='yes'
defaultValue={values.util}
onClick={ this.saveAndContinue }
/>
<input
type="button"
className="input"
onChange={values.util}
value='no'
defaultValue={values.util}
onClick={ this.saveAndContinue }
/>
在这种情况下,如何获取单击的按钮的值并保存该值以在另一个组件中调用
这里举个例子。
我想得到按钮的值是或否
使用event.target.value 向按钮添加值属性
<Button className="button" value="continue" onClick={this.saveAndContinue}> Continue </Button>
saveAndContinue = (e) => {
e.preventDefault();
console.log(e.target.value); //will give you the value continue
this.props.nextStep();
}
继续
saveAndContinue=(e)=>{
e、 预防默认值();
console.log(e.target.value);//将为您提供值continue
this.props.nextStep();
}
使用event.target.value
向按钮添加值属性
<Button className="button" value="continue" onClick={this.saveAndContinue}> Continue </Button>
saveAndContinue = (e) => {
e.preventDefault();
console.log(e.target.value); //will give you the value continue
this.props.nextStep();
}
继续
saveAndContinue=(e)=>{
e、 预防默认值();
console.log(e.target.value);//将为您提供值continue
this.props.nextStep();
}
是的,谢谢。在本例中,可以获取该值,但如何保存该值并在另一个组件中调用?case工作以获取值,但如何将该值保存并在另一个组件中进行invoque?将该值设置为state并作为道具传递给子组件。我不明白我必须如何执行此操作=/是的,谢谢。在本例中,可以获取该值,但如何保存该值并在另一个组件中调用?case工作以获取值,但如何将该值保存并在另一个组件中进行invoque?将该值设置为state并作为道具传递给子组件。我不明白我必须如何执行此操作=/