使用可用性-反应陷阱验证,当表单字段(AvField)中填充了来自后端的空数据时,我得到一条警告:
警告:
value
上的input
属性不应为null。考虑使用空字符串清除组件,或者使用undefined
清除不受控制的组件。
我尝试用空字符串交换空值,如警告所述,但无济于事。
<AvField type="text" name="offerKey" value={ data.offerKey === null ? '' : data.offerKey } />
如果将空格添加为值,警告会消失,但占位符文本不会出现在文本框中。
这是错误还是功能?
答案 0 :(得分:1)
您可以将状态值设置为null或空字符串('')
state = {
value: ''
}
或者您可以更改逻辑:
value={ data && data.offerKey ? data.offerKey : '' }