[英]Adding an editable prefix to the input - react
您应该使用 onChange,而不是 changeHandler。 请参阅https://reactjs.org/docs/forms.html#controlled-components中的示例。
您也可以将其用作不受控制的组件并给出 defaultValue={'+41'} 。
而不是在 value prop 中传递硬编码的“+41”,只需初始化phoneNumber
useState
试试下面的代码,你可能会找到你想要的。
export default function App() {
const [inputPhoneNumber, setInputPhoneNumber] = React.useState('');
const [phone, setPhone] = React.useState('+41');
const inputChangeHandler = ({ target }) => {
setPhone(target.value);
};
const submitHandler = (e) => {
e.preventDefault();
setInputPhoneNumber(phone);
setPhone('+41');
};
return (
<>
<form onSubmit={submitHandler}>
<input onChange={inputChangeHandler} value={phone} />
<button type="submit">Submit</button>
</form>
<h1>{inputPhoneNumber}</h1>
</>
);
}
可能是changeHandler,你能给出更多的代码吗?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.