React + next 的 onchange 函数问题

问题描述

我的表单只写上一个

let [userStateLog,userSetStateLogin]:any = useState({login: ''})

function changeLogin(event:any){
      userSetStateLogin({[event.target.name]:event.target.value})
}

<input placeholder="Login" name="login" onChange={changeLogin} className="login"/>

当通过onchange写入一个值时,只将之前的值写入状态参数

1 onchange 事件 => event.targe.value = 1 => myState = ' '

2 onchange 事件 => event.target.value = 12 => myState = '1'

3 onchange 事件 => event.target.value = 123 => myState = '12'

我不明白为什么 myState 落后一步

如何解决? 当发送到另一个组件并返回一个检查值时。滞后可以在 2 - 3 个步骤中观察到。 我该如何解决这个问题?

所有代码

export default function Auth ():JSX.Element {
   let [userStateLog,userSetStateLogin]:any = useState({login: ''})
   function changeLogin(event:any){
      let login:any = document.querySelector('.login')
      userSetStateLogin({[event.target.name]:event.target.value})
      console.log(userStateLog)
   }
   return(<>
   <input placeholder="Login" name="login" onChange={changeLogin} className="login"/>
   </>)
}

enter image description here

谢谢大家!这对我帮助很大!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)