ReactJS 在 运行 函数后清除 textarea 值
ReactJS clearing textarea value after running a function
我有以下代码用于将评论添加到 table
const [newComment, setNewComment] = useState('')
<textarea onChange={e => setNewComment(e.target.value)} placeholder='Add a comment'/>
<button onClick={() => AddComment(newComment)}>Add</button>
点击按钮添加评论后,我希望将文本区域的值clear/reset改为原始占位符'Add a comment'。目前,在我按下按钮后,评论被添加,但是文本区域保留了“newComment”值,这意味着我必须在插入新评论之前手动清除它,这不是很方便 - 有什么建议吗?
应该可以。按下按钮后,将值设置为空字符串
const [newComment, setNewComment] = useState('')
<input value={newComment} onChange={e => setNewComment(e.target.value)} placeholder='Add a comment'/>
<button onClick={() => {
AddComment(newComment)
setNewComment('')
}}>Add</button>
我想你想通过给它一个反映 newComment
状态的 value
属性来使文本区域成为 React 所谓的“受控组件”:
const [newComment, setNewComment] = useState("");
return (
<div>
<textarea
onChange={e => setNewComment(e.target.value)}
placeholder="Add a comment"
value={newComment}
/>
<button
onClick={() => {
AddComment(newComment)
setNewComment("");
}}
>
Add
</button>
</div>
);
我有以下代码用于将评论添加到 table
const [newComment, setNewComment] = useState('')
<textarea onChange={e => setNewComment(e.target.value)} placeholder='Add a comment'/>
<button onClick={() => AddComment(newComment)}>Add</button>
点击按钮添加评论后,我希望将文本区域的值clear/reset改为原始占位符'Add a comment'。目前,在我按下按钮后,评论被添加,但是文本区域保留了“newComment”值,这意味着我必须在插入新评论之前手动清除它,这不是很方便 - 有什么建议吗?
应该可以。按下按钮后,将值设置为空字符串
const [newComment, setNewComment] = useState('')
<input value={newComment} onChange={e => setNewComment(e.target.value)} placeholder='Add a comment'/>
<button onClick={() => {
AddComment(newComment)
setNewComment('')
}}>Add</button>
我想你想通过给它一个反映 newComment
状态的 value
属性来使文本区域成为 React 所谓的“受控组件”:
const [newComment, setNewComment] = useState("");
return (
<div>
<textarea
onChange={e => setNewComment(e.target.value)}
placeholder="Add a comment"
value={newComment}
/>
<button
onClick={() => {
AddComment(newComment)
setNewComment("");
}}
>
Add
</button>
</div>
);