前端BUG总结-表单提交验证时对undefined处理

前端BUG总结-表单提交验证时对undefined处理

背景

刊登模块=>在线listing编辑运输模板时,当全球运输从Flat:Same cost to all buyers/Calculated:Cost varies by buyer location更新为No international shipping时,字段国家服务intlShippingPolicyInfoServiceArr不会页面显示,所以也没值,当点击保存的时候,无法发送请求。
前端BUG总结-表单提交验证时对undefined处理_第1张图片
前端BUG总结-表单提交验证时对undefined处理_第2张图片
No international shipping

代码

  1. 问题定位:提交时有判断页面是否改变的函数如下
if (_unchanged) {
   
   const isUnchanged = comparison(params, formatData)// false为数据修改,true为数据未修改
    if (!isUnchanged) {
   
        // isUpdateData  是否有修改数据    1:是  0: 否 
        params.isUpdateData = 1
        this.setState({
   
            isUpdateData: true
        })
    }
}
  1. 问题深入:comparison函数如下:
export const comparison = (n, o) => {
   
    let flag = true;
    let k;
    for (let i = 0; i < comparisonField.length; i++) {
   
        if (!flag) {
   
            console.log(k);
            return false;
        }
        k = comparisonField[i]
        if (k === "domesticShippingPolicyInfoSe

你可能感兴趣的:(BUG,总结,Javascript,BUG)