Reactjs 我是否需要手动定义onChange处理程序来填充状态变量?
假设我有一个包含许多输入控件的表单,它应该绑定到各自的状态变量。我真的需要为每一个定义手动Reactjs 我是否需要手动定义onChange处理程序来填充状态变量?,reactjs,Reactjs,假设我有一个包含许多输入控件的表单,它应该绑定到各自的状态变量。我真的需要为每一个定义手动onChange=..处理程序,以便在单击提交或按Enter键时填充我的状态变量吗 e、 g const[lastLoginDate,setLastLoginDate]=useState(); const[confirm,setconfirm]=使用状态(false); .. ... //onChange处理程序从输入控件填充状态变量 handleLastLoginDate=(e)=>{ setLastLo
onChange=..
处理程序,以便在单击提交或按Enter键时填充我的状态变量吗
e、 g
const[lastLoginDate,setLastLoginDate]=useState();
const[confirm,setconfirm]=使用状态(false);
..
...
//onChange处理程序从输入控件填充状态变量
handleLastLoginDate=(e)=>{
setLastLoginDate(即目标值);
};
handleConfirmed=(e)=>{
setconfirm(例如,target.checked?true:false);
};
...
//在提交或输入时,我希望所有状态变量都包含填充的值
这对我来说似乎太费力了。我希望有一种方法可以简单地说明
<input type="text" stateVar={lastLoginDate} ></input>
有没有一种方法可以简化React中的状态绑定?在不添加更多抽象的情况下,有必要使用事件处理程序(如
onChange
)来调用更新状态的函数。如果您想要更紧凑的语法,可以使用如下匿名箭头函数(注意,当处理程序中需要多行时,这不是很好):
setLastLoginDate(e.target.value)}
>
不,你没有;这是一种常见的模式,您可以将控件名传递给更高阶的处理程序,甚至可以从事件的目标获取控件名。阅读文档,例如:除非使用表单库,否则不要阅读。
<input type="text" stateVar={lastLoginDate} ></input>
<input
type="text"
value={lastLoginDate}
onChange={(e) => setLastLoginDate(e.target.value)}
></input>