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');
  }
};

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM