React Redux表单输入编辑返回不受控制的输入的错误消息

时间:2018-12-05 22:05:45

标签: reactjs redux

React Redux 表单输入编辑返回不受控制的输入的错误消息

下面的代码使用 react redux 在数据库输入的表单中显示记录,并且工作正常。当我尝试编辑姓氏的表单输入时,它不会编辑,而是 它显示错误

组件正在更改要控制的文本类型的不受控制的输入。 输入元素不应从不受控制切换为受控制(反之亦然)。 在组件的生命周期中决定使用受控还是不受控制的输入元素。

这是如何在表单输入中显示要编辑的结果

Q/A

下面是完整的反应redux代码

const whosOnline = (a) => {

var obj = { online:[],
offline:[],
away:[] };



for(let i = 0; i < a.length; i++){
if(a[i].lastActivity > 10 && a[i].status == 'online'){obj.away.push(a[i].username)}
else if(a[i].status == 'offline'){obj.offline.push(a[i].username)}
else{obj.online.push(a[i].username)}
  }
  for(let x in obj){
  console.log(obj[x])
   if(obj[x] === []){delete obj[x]}}
  return obj
    }

1 个答案:

答案 0 :(得分:0)

最后,解决我输入表单无法编辑的问题的方法是用defaultValue {}选项替换表单输入值{}。我利用Solanki在React Input Type not editable

上发布的解决方案/答案

不再了

<input type="text" className="form-control" value={pgs1.items1 && this.props.pgs1.items1[0].lastName}  onChange={this.handleChange}/>  

但这可以解决我的问题

<input type="text" className="form-control" defaultValue={pgs1.items1 && this.props.pgs1.items1[0].lastName}  onChange={this.handleChange}/>  

通过实现defaultValue {},我现在可以随时编辑表单值。