这是一种奇怪的情况。我简化了一个react最终表单数组的示例,它允许我向我的表单中添加元素,并且我可以扩展一个对象数组。它非常类似于react最终形式数组提供的简单示例。数组工作得很好,但问题是当我试图删除特定的元素时,输入中显示的实际值不会改变。例如,对于图像:

这里我们可以看到,我可以将客户添加到一个列表中,它可以生成一个对象数组。这个很好用。现在,假设我想去掉第一个元素。我点击X,会发生什么?

在这里,我们可以看到表单数据正确地删除了我想要删除的第一个元素,但是,在输入上显示的实际值仍然是John,尽管表单知道它是Mary Jane。当我单击输入时,它们似乎更新为正确的值。但这不是应该发生的事情。
最奇怪的是,我做了一个代码框,你可以在这里看到https://codesandbox.io/s/agitated-wilson-5xlqq
它有完全相同的代码,我的应用程序,它的工作方式,如预期的!因此,我甚至无法重新创建该bug,并确保依赖项与im使用的版本相同。我只能在我自己的设置中重新创建它,我不明白为什么会这样。
我试过使用chrome,safari和firefox,他们似乎都在我的电脑上做同样的事情,我甚至尝试用我的手机连接到我笔记本上运行的react服务器,它们都表现出了相同的行为。
我不知道我能成为什么,版本,反应,如果有人有任何想法或有类似的问题在过去,请帮助。我不会在这里粘贴我的代码,以免在这篇文章中大张旗鼓,但是您可以看到,在我上面链接的沙箱中,这是完全相同的代码。
编辑:--我想指出发生的另一个错误,一旦我删除了第一个元素,如果我尝试编辑它,它就会将另一个字段与我刚才添加的输入一起推入数组中,就好像它被绑定了一样。我希望我能在密码箱上重新创建它。
发布于 2020-03-24 10:56:29
尝试删除node_modules文件夹并重新安装它们。您是否在控制台日志中看到任何错误?
https://stackoverflow.com/questions/60751670
复制相似问题