Uncaught TypeError: date.clone is not a function 【报错解决】
没有技术收获,只是记录一下这个报错是form值有问题

原因是单个日期的时间控件下,重置form值的时候数据格式有问题,修改代码:
// 重置表单
const reset = () => {
const resetValues: any = { ...initialValues };
if (resetValues.time && Array.isArray(resetValues.time)) {
// resetValues.time.length === 0 ? resetValues.time = [] : resetValues.time = [moment(resetValues.time[0]), moment(resetValues.time[1])]
if (resetValues.time.length === 0) {
resetValues.time = null
} else if (resetValues.time.length === 2) {
resetValues.time = [moment(resetValues.time[0]), moment(resetValues.time[1])]
}
} else if (resetValues.time && !Array.isArray(resetValues.time)) {
resetValues.time = moment(resetValues.time)
}
// 根据初始化值重置表单
form.setFieldsValue(resetValues);
// 重置初始化
if (onSure) {
const resetSureValues: any = { ...initialValues };
if (resetSureValues.time && Array.isArray(resetSureValues.time)) {
if (resetSureValues.time.length === 0) {
resetSureValues.time = null
} else if (resetSureValues.time.length === 2) {
resetSureValues.time = [FormatStart(resetSureValues.time[0]), FormatEnd(resetSureValues.time[1])]
}
// resetSureValues.time.length === 0 ?
// resetSureValues.time = null :
// resetSureValues.time = [FormatStart(resetSureValues.time[0]), FormatEnd(resetSureValues.time[1])]
} else if (resetSureValues.time && !Array.isArray(resetSureValues.time)) {
resetSureValues.time = FormatEnd(resetSureValues.time)
}
onSure(resetSureValues, 'reset');
}
};

浙公网安备 33010602011771号