我有一个父组件,它有多个子组件,我将其中一个父函数作为道具传递给子组件,以便当子组件中的数据发生更改时,在父组件中存在的使用变量中更新相同的数据。然而,这样做并不能准确地更新父组件中的正确详细信息。谁能告诉我为什么不正确的数据被保存在父组件中吗?
//Parent component
function updateSaveRequestCallBack(key,value){
switch(key){
case 'employeeName': setEmployeName(value);
case 'emplId': setEmplyID(value);
case 'isCityizen': setNational(value);
.
.
.
etc i have like this some 10 to 15 fields
default:
}
}
//在儿童中,我有大约10到15个控制
其将调用父updateSaveRequestCallBack方法并更新父中存在的状态变量。
<text aria-required="true" id="employeeName" value={employeeName}
onChange={e.target.value=> { setCountryOption(e.target.value);props.updateSaveRequestCallBack('employeeName',e.target.value)}} />
最后,当用户单击父组件中的保存按钮时。
所有的值都将被打乱,并且错误的数据将被保存。我的保存句柄如下所示。
function HandleSaveRequest() {
let saveRequestCommand = {
employeeName:employeeName,
employeeGender:employeeGender,
DOB:DOB,
.
.
.
.
.
etc some 15 fields
}
无线电和选择控件的数据变得一团糟,因为在发送到post-api之前创建对象时,它们似乎不准确。
问题出现在switch语句中。我错过了添加中断语句