在ReactJ中提交表格后,如何重置输入字段?
我尝试将状态设置为一个空字符串,但它不起作用,输入的值已重置,但仍显示输入字段内的输入值。我该如何解决?
import { useState } from 'react';
const App = () => {
const [task,setTask] = useState('');
const [list,setList] = useState([]);
const submitHandler = (event) => {
event.preventDefault();
const newTask = { id: new Date().getTime().toString(), title: task };
setList([...list, newTask]);
setTask('');
}
const clearList = () => {
setList([]);
}
const removeItem = (id) => {
const filteredList = list.filter(item => item.id !== id);
setList(filteredList);
}
return <div>
<h2>To do list!</h2>
<form onSubmit={submitHandler}> Enter Task!
<input type='text'
placeholder='Wut you upto?'
onChange = {(event) => {setTask(event.target.value)}}>
</input>
</form>
<div>
{list.map((obj) => (
<h4 key={obj.id}>{obj.title}<button onClick={() => removeItem(obj.id)}>X</button></h4>))}
<button onClick={clearList}>Clear All</button>
</div>
</div>
}
export default App
I tried setting the state to an empty string but it's not working, the entered value is resetted but it's still showing the entered value inside the input field. How can i fix this?
import { useState } from 'react';
const App = () => {
const [task,setTask] = useState('');
const [list,setList] = useState([]);
const submitHandler = (event) => {
event.preventDefault();
const newTask = { id: new Date().getTime().toString(), title: task };
setList([...list, newTask]);
setTask('');
}
const clearList = () => {
setList([]);
}
const removeItem = (id) => {
const filteredList = list.filter(item => item.id !== id);
setList(filteredList);
}
return <div>
<h2>To do list!</h2>
<form onSubmit={submitHandler}> Enter Task!
<input type='text'
placeholder='Wut you upto?'
onChange = {(event) => {setTask(event.target.value)}}>
</input>
</form>
<div>
{list.map((obj) => (
<h4 key={obj.id}>{obj.title}<button onClick={() => removeItem(obj.id)}>X</button></h4>))}
<button onClick={clearList}>Clear All</button>
</div>
</div>
}
export default App
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您需要将
value
属性添加到输入字段:you need to add
value
attribute to the input field: