vue-vben-admin
vue-vben-admin copied to clipboard
DatePicker等日期组件设置默认值显示正常,但再想选择其他日期的时候导致该日期组件无法选择
⚠️ 重要 ⚠️ 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭
- [x] 已阅读 文档.
- [x] 确保您的代码已是最新或者所报告的 Bug 在最新版本中可以重现. (部分 Bug 可能已经在最近的代码中修复)
- [x] 已在 Issues 中搜索了相关的关键词
- [x] 不是 ant design vue 组件库的 Bug
描述 Bug
表单在使用日期组件的时候,往往需要回显值。现在的问题就是可以回显展示,但如果再重新选择的时候,就会导致该日期组件无法选择。
复现 Bug
这里我使用defaultValue属性赋一个默认值,选择的时候情况和使用setFieldsValue赋值一样
import moment from 'moment'; ......省略..... { field: 'time', label: '时间', defaultValue: moment(), component: 'DatePicker', }
系统信息
- 操作系统: win11
- Node 版本: 16.15.0
- 包管理器 (npm/yarn/pnpm) 及其版本: yarn
@tiancaizs 见 src/components/Form/src/BasicForm.vue 123、127行,会强制将输入值转换为 Moment
对象,但 antdv 组件接收值是 Dayjs
,所以会报错。
我的解决方案是:取消 dateUtil
的强制转换,外层主动传入 Dayjs
对象。但这样会导致后续对 Moment
的一些操作没意义了,产生冗余代码,理论上不影响正常逻辑
@tiancaizs 见 src/components/Form/src/BasicForm.vue 123、127行,会强制将输入值转换为
Moment
对象,但 antdv 组件接收值是Dayjs
,所以会报错。 我的解决方案是:取消dateUtil
的强制转换,外层主动传入Dayjs
对象。但这样会导致后续对Moment
的一些操作没意义了,产生冗余代码,理论上不影响正常逻辑
nice,非常感谢
nice