首页 > 解决方案 > React:使用 FieldArray 方法更改多步表单中的值

问题描述

我有一个使用react-final-form. FieldArray最终用户可以添加 X 个房间类型,然后根据该数量下一步将生成房间数组。

这是一个现场演示-codesandbox

现在,当涉及到第二步(房间配置)时,我需要在一个正在进行的过程中设置默认值:当用户选择成人的最大数量时,最大儿童的值应该设置为该数字减 1。

我在(调用方法)<OnChange>内部使用组件。 它有效,但问题是它改变了对象内的所有值。您可以在上面的演示中检查此行为。FieldArrayfields.update()

我不知道出了什么问题。

提前感谢您的帮助。

标签: reactjsformsreact-final-formformwizardreact-final-form-arrays

解决方案


首先,美丽的形式!你非常亲近。我已将<OnChange/>组件移入RoomRow并使用 a<Field/>来获取onChange字段max_children

编辑美观的程序


推荐阅读