[英]How can I change form fields based on dropdown selection with reactJS
In my dropdown I have two options, Yes or No I want one component to render when user select Yes and other to another component to render if user selects No. Also I want when page refresh, no options should be shown on page在我的下拉列表中,我有两个选项,是或否我希望一个组件在用户 select 是时呈现,如果用户选择否,则另一个组件呈现给另一个组件。另外我希望在页面刷新时,页面上不应显示任何选项
How can I achieve my goal?我怎样才能实现我的目标? I am sharing my code below
我在下面分享我的代码
Here is the dropdown fields,
const CustomTimings=[
{label:'Yes', value: 1},
{label:'No', value: 2}
]
const DateAndTime = () => (
<div>
{CustomTimings === 'Yes'
? <CustomeTimeYes />
: <CustomeTimeNo />
}
return
<div className="input-field">
<div class="row">
<div class="col-4">
<label htmlFor="customerype">Customer Type</label><br />
<Select options={CustomerType} onChange={this.handleChangeCT} value={this.state.CustomerType} />
</div>
<div class="col-4">
<label htmlFor="learning">Do you have custom timings</label><br/>
<Select options={CustomTimings} onChange={this.handleChangeCTime} value={this.state.CustomTimings} />
</div>
</div>
</div><br />
<div>
{DateAndTime()}
<br />
</div>
Can somebody explain what I am doing wrong here, either it is showing both components or any one and not changing on refresh有人可以解释我在这里做错了什么吗,要么是显示两个组件,要么是任何一个组件,并且在刷新时没有改变
You can work with conditional rendering where you check for a specific condition before render your component.您可以使用条件渲染,在渲染组件之前检查特定条件。
render() {
const { value } = this.state;
return (
<div>
{value === 'dropdown' && <Component1>...</Component1>}
{value === 'text' && <Component2></Component2>}
{value === 'checkboxes' && <Component3></Component3>}
...
</div>
)
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.