pro-components icon indicating copy to clipboard operation
pro-components copied to clipboard

🐛[BUG] ProForm 中自定义 FormItem 定义了 defaultProps 导致 value 不更新

Open alicejxr opened this issue 3 years ago • 1 comments
trafficstars

提问前先看看:

https://github.com/ryanhanwu/How-To-Ask-Questions-The-Smart-Way/blob/main/README-zh_CN.md

🐛 bug 描述

📷 复现步骤

https://codesandbox.io/s/formrefde-shi-yong-forked-qdwxml?file=/App.tsx

自定义 FormItem 定义了 defaultProps 的 value 默认值,输入内容后 value 没有同步更新

🏞 期望结果

输入内容后 value 同步更新

💻 复现代码

https://codesandbox.io/s/formrefde-shi-yong-forked-qdwxml?file=/App.tsx

© 版本信息

  • ProComponents 版本: 2.3.12

🚑 其他信息

alicejxr avatar Sep 22 '22 09:09 alicejxr

两个问题:

  1. 不要封装Input,直接用ant design的Input组件
  2. 设置默认值,请使用 initialValues

wangmeijian avatar Sep 23 '22 09:09 wangmeijian

两个问题:

  1. 不要封装Input,直接用ant design的Input组件
  2. 设置默认值,请使用 initialValues
  1. 是为了快速复现才这么写的,具体实现场景肯定不会这么写的
  2. 使用 initialValues 的确可以解决问题(目前也在用了),但不太明白为什么使用 defaultProps 会导致这个问题

alicejxr avatar Sep 27 '22 06:09 alicejxr

因为覆盖了 onChange ,导致 FormItem 监听导致的

chenshuai2144 avatar Oct 10 '22 02:10 chenshuai2144