let obj = {
"stepInfo": {
"companyChannel": [
"1",
"2",
"3"
],
"promotionSteps": [
{
"companyFirstChargeAmount": 12,
"companyFirstChargeAmount1": 333,
"mainStep": false,
"returnBcoupon": [
{
"batchId": "121",
"number": 2,
"replaceFastCarCoupon": [
1
],
"fastCarBatchId": "332",
"fastCarNumber": 12
},
{
"batchId": "123",
"number": 123,
"replaceFastCarCoupon": [
1
],
"fastCarBatchId": "3",
"fastCarNumber": 4
}
],
"sms": false,
"push": false
},
{},
{
"companyFirstChargeAmount": 3,
"companyFirstChargeAmount1": 122,
"mainStep": false,
"returnBcoupon": [
{
"batchId": "11",
"number": 2,
"replaceFastCarCoupon": [
1
],
"fastCarBatchId": "12",
"fastCarNumber": 33
},
{
"batchId": "122",
"number": 12
}
],
"sms": false,
"push": false
},
{},
{
"companyFirstChargeAmount": 33,
"companyFirstChargeAmount1": 121221,
"mainStep": false,
"returnBcoupon": false,
"sms": false,
"push": false
},
{
"companyFirstChargeAmount": 12,
"mainStep": false,
"returnBcoupon": [
{
"batchId": "33",
"number": 12,
"replaceFastCarCoupon": [
1
],
"fastCarBatchId": "12",
"fastCarNumber": 33
},
{
"batchId": "44",
"number": 12
},
{
"batchId": "4441",
"number": 122
},
],
"sms": false,
"push": false
}
],
"stepCrowdTag": "1001271955",
"time":[
"2022-07-13T09:32:30.252Z",
"2022-07-22T09:32:30.252Z"
]
}
}
const replaceNullProperty = (obj) => {
for( let i in obj ){//遍历对象中的属性
if(obj[i] && obj[i].constructor === Object){
if(JSON.stringify(obj[i]) == "{}"){
obj.splice(i,1)
}
obj[i]&&Object.keys(obj[i]).map(item=>{
if(item == "replaceFastCarCoupon"){
obj[i][item] = obj[i][item].join('')
}else if(item == "mainStep"){
obj[i][item] = obj[i][item] ? 1 : 0
}else if(obj[i][item] == false){
// console.log( obj[i][item],item)
delete obj[i][item]
}else if(item == "time"){
obj[i]["startTime"] = moment(obj[i][item][0]).format('YYYY-MM-DD HH:mm:ss')
obj[i]["endTime"] = moment(obj[i][item][1]).format('YYYY-MM-DD HH:mm:ss')
// console.log( obj[i][item])
}
replaceNullProperty(obj[i][item])
})
}
}
return obj
}
replaceNullProperty(obj)
console.log(obj)
// 保存信息
// import React, { useCallback, useEffect, useState } from "react";
// import { Button, Row, Col, Input,Form } from "antd";
// import Schema from "./schema";
// import SharedInfo from "./sharedInfo"
// var merge = require('lodash.merge');
// function BaseInfo(props) {
// const {form} = props
// function _basePath(path) {
// // 若是数组,则直接返回
// if (Array.isArray(path)) return path
// // 若有 '[',']',则替换成将 '[' 替换成 '.',去掉 ']' // 由于[0] 会被antd form解析成路径 所以将[0]改为'0'
// return path.replace(/\</g, '_').replace(/\>/g, '').split('_')
// }
// function setObj(object, path, value) {
// if (typeof object !== 'object') return object;
// _basePath(path).reduce((o, k, i, _) => {
// if (i === _.length - 1) { // 若遍历结束直接赋值
// o[k] = value
// return
// } else if (k in o) { // 若存在对应路径,则返回找到的对象,进行下一次遍历
// return o[k]
// } else { // 若不存在对应路径,则创建对应对象,若下一路径是数字,新对象赋值为空数组,否则赋值为空对象
// o[k] = /^[0-9]{1,}$/.test(_[i + 1]) ? [] : {}
// return o[k]
// }
// }, object)
// // 返回object
// return object;
// }
// const replaceNullProperty = (obj) => {
// let nullData = [undefined,null,'null',"undefined",'']
// for( let i in obj ){//遍历对象中的属性
// if(obj[i] && obj[i].constructor === Object){
// Object.keys(obj[i]).map(item=>{
// replaceNullProperty(obj[i][item])
// })
// }else if(obj[i] && obj[i].constructor === Array){
// let len = obj[i].length
// for(let j = 0; j < len ; j++){
// // console.log(obj[i][j])
// if( nullData.includes(obj[i][j])){
// obj[i][j] = {}
// }else if(obj[i][j].constructor === Array || obj[i][j].constructor === Object){
// replaceNullProperty(obj[i][j])
// }
// }
// }
// }
// return obj
// }
// const replaceNullProperty = (obj) => {
// for( let i in obj ){//遍历对象中的属性
// if(obj[i] && obj[i].constructor === Object){
// if(JSON.stringify(obj[i]) == "{}"){
// obj.splice(i,1)
// }
// obj[i]&&Object.keys(obj[i]).map(item=>{
// if(item == "replaceFastCarCoupon"){
// obj[i][item] = obj[i][item].join('')
// }else if(item == "mainStep"){
// obj[i][item] = obj[i][item] ? 1 : 0
// }else if(obj[i][item] == false){
// console.log( obj[i][item],item)
// delete obj[i][item]
// }
// replaceNullProperty(obj[i][item])
// })
// }
// }
// return obj
// }
// const onFormSubmit=(e)=>{
// e.preventDefault();
// form.validateFields((err,obj)=>{
// if(!err){
// let newObj = []
// Object.keys(obj).map((item,index)=>{
// newObj.push(setObj({},item , obj[item]))
// })
// let noNullArr = replaceNullProperty(newObj)
// let object = {}
// replaceNullProperty(merge(object,...noNullArr))
// // 需要将空对象 去除掉
// console.log("刘杰",object)
// }
// console.log(err,obj)
// })
// }
// return (
// <div className="BaseInfoWrap">
// <h2>基本信息</h2>
// <Form
// onSubmit={onFormSubmit}
// >
// <div className="baseInfoFormBlock">
// <Schema form={form}></Schema>
// {/* <SharedInfo form={form}></SharedInfo> */}
// </div>
// <Button type="primary" htmlType="submit">开始创建</Button>
// </Form>
// {/* <div className="baseInfoBtnBlock">
// <Button type="">取消创建</Button>
// <Button type="primary" >开始创建</Button>
// </div> */}
// </div>
// )
// }
// export default (Form.create({ name: 'activity' })(BaseInfo))
console