#node.js #reactjs
#node.js #reactjs
Вопрос:
Я работаю над приложением Mernstack, все в моем приложении работает хорошо, за исключением поля ввода, которое не очищается после отправки.
мой компонент
const [comments, setCommentData] = useState([]);
const onSubmit = useCallback(
(e) => {
e amp;amp; e.preventDefault();
axios
.post(
"http://localhost:9000/events/"
props.match.params.id
"/eventcomment",
{ name: name, description: eventDescription }
)
.then(function (response) {
console.log("response", response.data.eventcomments);
onPageLoad();
})
.catch(function (error) {
console.log(error);
});
},
[props.match.params.id, name, eventDescription]
);
Я пытался это сделать, но это не сработало.
setCommentData("");
Комментарии:
1. Скорее всего, вы не работаете с контролируемыми компонентами в react. В вашем случае вы можете сделать что-то вроде e.target.value = «», после вызова api
2. Если @simbathesailor прав, «Реактестный» способ сделать это был бы через
ref
.
Ответ №1:
Начальное состояние — []
, поэтому вы должны восстановить его с тем же исходным содержимым:
setCommentData([]);