/**
* 重置data内的表单值
* @param {Array} arr 禁止重置的数组
* @param {Array} remore 重置默認的屬性名 ex:['id','name']
* @param {Array} remoreData 重置默認的屬性名賦予的值 ['1008','小三']
* */
resetFormData(data, arr = [], remore = [], remoreData = []) {
for (const prop in data) {
console.log(remore.includes(prop),prop,remore,'remore.includes(prop)')
if (remore.includes(prop)) {
data[prop] = remoreData[remore.indexOf(prop)]
}else{
if (Array.isArray(data[prop])) {
// 如果属性是数组,则递归调用该方法
data[prop].forEach(item => this.resetFormData(item))
} else if (typeof data[prop] === 'object' && data[prop] !== null) {
// 如果属性是对象且不为null,则递归调用该方法
this.resetFormData(data[prop])
} else {
// 否则重置属性值为null、空字符串或0
if (!arr.includes(prop)) {
if (typeof data[prop] === 'string') {
data[prop] = ''
} else if (typeof data[prop] === 'number') {
data[prop] = 0
} else {
data[prop] = null
}
}
}
}
}
},
重置data中的表单
于 2023-05-30 11:31:41 首次发布