Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

setFieldValue don't call dependencies form field change #36985

Open
mortalYoung opened this issue Aug 10, 2022 · 6 comments
Open

setFieldValue don't call dependencies form field change #36985

mortalYoung opened this issue Aug 10, 2022 · 6 comments
Labels
help wanted The suggestion or request has been accepted, we need you to help us by sending a pull request. improvement improve some features Inactive

Comments

@mortalYoung
Copy link
Contributor

Reproduction link

Edit on CodeSandbox

Steps to reproduce

  1. 点击 setFieldValue 按钮修改 ['user','introduction'] 的值
  2. pre 标签的内容不变
  3. 点击 setFieldsValue 改变值
  4. pre 标签的内容改变

What is expected?

点击 setFieldValue 按钮会触发 dependencies 监听的值,从而改变 pre 标签的内容

What is actually happening?

pre 标签的内容不变

Environment Info
antd 4.22.3
React 18.2.0
System macOS
Browser Chrome

虽然 setFieldsValue 可以实现,但是本场景中的 NamePath 是复杂的嵌套结构,如果要通过 setFieldsValue 来改变值的话,需要用户自行通过 NamePath 转化成 key-value 的形式,对用户来说并不方便。期望可以通过 setFieldValue 实现

@zombieJ
Copy link
Member

zombieJ commented Aug 10, 2022

嗯,的确可以支持一下。

@zombieJ zombieJ added improvement improve some features help wanted The suggestion or request has been accepted, we need you to help us by sending a pull request. labels Aug 10, 2022
@github-actions
Copy link
Contributor

Hello @mortalYoung. We totally like your proposal/feedback, welcome to send us a Pull Request for it. Please send your Pull Request to proper branch (feature branch for the new feature, master for bugfix and other changes), fill the Pull Request Template here, provide changelog/TypeScript/documentation/test cases if needed and make sure CI passed, we will review it soon. We appreciate your effort in advance and looking forward to your contribution!

你好 @mortalYoung,我们完全同意你的提议/反馈,欢迎直接在此仓库 创建一个 Pull Request 来解决这个问题。请将 Pull Request 发到正确的分支(新特性发到 feature 分支,其他发到 master 分支),务必填写 Pull Request 内的预设模板,提供改动所需相应的 changelog、TypeScript 定义、测试用例、文档等,并确保 CI 通过,我们会尽快进行 Review,提前感谢和期待您的贡献。

giphy

@SuperZ3
Copy link

SuperZ3 commented Aug 21, 2022

我来试着改一下

@linct96
Copy link

linct96 commented Aug 26, 2022

看了一下大概是 setFieldValue 时缺失部分带有 dependencies 组件的 reRender 逻辑

@susususutie
Copy link

等不了官方merge的可以暂时先用 shouldUpdate 修复

@earthaYan
Copy link

等不了官方merge的可以暂时先用 shouldUpdate 修复

试了下确实可以生效,但官方文档似乎不推荐dependencies和souldUpdate一起使用?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted The suggestion or request has been accepted, we need you to help us by sending a pull request. improvement improve some features Inactive
Projects
None yet
Development

No branches or pull requests

6 participants