antd RangePicker清空日期时报错

可能原因

  1. 清空操作没有按照 RangePicker 组件的要求来进行,比如直接设置了 valuenull[]

  2. 使用了 RangePickeronChange 事件处理函数不正确,没有正确更新组件的状态。

解决方法

  1. 确保使用 RangePicker 组件的 value 属性时,始终传递数组,即使要清空日期也要传递 [],而不是 null

  2. onChange 事件处理函数中,当用户清空日期时,更新 value[]

javascript 复制代码
import React, { useState } from 'react';
import { DatePicker } from 'antd';
 
const { RangePicker } = DatePicker;
 
const MyComponent = () => {
  const [dateRange, setDateRange] = useState([]); // 初始化为空数组
 
  const handleDateChange = (dates, dateStrings) => {
    // 当用户清空日期时,dates 和 dateStrings 都会是 undefined
    if (!dates) {
      setDateRange([]); // 清空日期
    } else {
      setDateRange(dates); // 更新日期范围
    }
  };
 
  return (
    <RangePicker value={dateRange} onChange={handleDateChange} />
  );
};
 
export default MyComponent;
复制代码
相关推荐
努力往上爬de蜗牛1 小时前
react native真机调试
javascript·react native·react.js
李@十一₂⁰2 小时前
HTML 特殊字体符号
前端·html
y***86692 小时前
TypeScript在Electron应用中的使用
javascript·typescript·electron
小奶包他干奶奶4 小时前
Webpack学习——Loader(文件转换器)
前端·学习·webpack
zy happy4 小时前
若依 vue3 报错:找不到模块“@/api/xxxx/xxxxx”或其相应的类型声明。。Vue 3 can not find mod
前端·javascript·vue.js
tobebetter95274 小时前
How to manage python versions on windows
开发语言·windows·python
潘小安5 小时前
Git Worktree + Claude Code:让你的开发效率翻倍的秘密武器
前端
meichaoWen5 小时前
【Vue3】vue3的全面学习(一)
前端·javascript·学习
小猪努力学前端5 小时前
在 React + React Router v7 SSR 项目里做多端适配,我踩的两个坑
前端·react.js
9***P3345 小时前
PHP代码覆盖率
开发语言·php·代码覆盖率