我通过以下方式定义了一个常量以在 ReactJS 中使用 UseState Hook:
const [inputValue, setInputValue] = useState("")
以某种方式为我的表单使用 inputValue:
<form
data-testid="form"
onSubmit={e => {
e.preventDefault();
setLogFilters({
queryText: inputValue
});
}}
>
我可以使用下面的代码段在我的表单中输入字符串:
<Input
name="input1"
type="text"
onChange={e => setInputValue(e.target.value)}
/>
我现在有一个按钮,onclick 应该清除表单中的字符串输入:
<Button
onClick={() => {
setInputValue("");
}}
>
但是表单保留了原始字符串,并且状态没有设置为空字符串。怎么了?为什么钩子不能更新状态?