import React, { useState } from "react";
function App() {
const [name, setName] = useState("");
const [headingText, setHeadingText] = useState("");
function handleChange(event) {
// console.log(event.target.value);
setName(event.target.value);
}
function handleClick(event) {
setHeadingText(name);
//after everything is done
event.preventDefault();
}
return (
<div className="container">
<h1>Hello {headingText}</h1>
<form onSubmit={handleClick}>
<input
onChange={handleChange}
type="text"
placeholder="What's your name?"
value={name}
/>
<button type="submit">Submit</button>
</form>
</div>
);
}
export default App;
我将使用上面的代码来问我的问题。input 元素通过用户输入(值属性)处理其状态更改,但 react 使用状态变量来处理状态更改。为了有一个常数值,我们也设置了 react 变量来处理表单元素的状态变化。
value={name}
但是如果我们这样做然后通过 event.target.value 访问用户输入的值,它如何能够跟踪用户在输入字段中输入的内容,因为我们设置了 value={name}。event.target.value 不应该给我们 name 变量的值而不是用户输入