首先发帖,请耐心等待。
我已经搜索过这个问题,但无法弄明白。
请考虑包含3个文本字段的表单:A,B和C.当A填充时,将触发异步服务器提取,结果可以定义B或C或两者的值。如果用户更改了A,则必须清除B e C的旧值并触发新的提取。到现在为止还挺好。我在必要时派遣改变行动来填补(或清除)B和C.
但是,有一条规则。当字段由服务器提取填充时,必须禁用它,因此用户不能直接更改该值。如果没有,它必须保持启用状态,以便用户填写它。
您认为跟踪必须禁用的字段的最佳方法是什么?
就我搜索而言,redux-form不直接这样做。
我应该将此信息保存在redux状态的分离结构上吗?我应该使用reducer插件扩展redux-form状态吗?无论哪种方式,我应该派遣一种新的行动来禁用每个字段吗?
其他选项是使用“自动填充”而不是“更改”,并禁用标记为自动填充的字段。
我错过了一个非常简单的解决方案?
谢谢
我不确定是否有一个“简单”的解决方案。就个人而言,我会创建一个React状态来跟踪B和C的状态,也许是类似的东西
{
BGenerated: true,
CGenerated: true
}
当你渲染你的Field
输入时,添加道具disabled={this.state.BGenerated}