Already read 에러
이미 찾아보셨을 수도 있지만 에러가 나오면 우선 에러를 구글 검색으로 찾아보시길 추천합니다.
말씀하신 [Unhandled promise rejection: TypeError: Already read]
는 검색해보면 쉽게 찾을 수 있는 에러입니다. 이미 response를 읽어서 json으로 변형했는데 다시 json을 호출해서 생기는 문제입니다.
Promise의 잘못된 사용
.then(response => {
response.json(),
console.log(response.json())
})
위 코드에서 then으로 넘긴 함수는 아무것도 리턴하지 않으므로 fetchGradeUpdate
에다가 then을 붙이면 아무런 값도 얻을 수 없습니다.
코드 삽입시 markdown을 이용
질문에 코드를 올릴 때는 markdown의 code 문법을 이용하면 보다 보기 쉽게 코드를 올릴 수 있습니다. 다음 글을 참고하여 코드를 넣으시면 다른 분들이 읽기 편합니다. 다른 분들이 읽기 편해야 보다 정확한 답변을 들을 수 있습니다.
PUT으로 데이터를 보내는 것과 setState의 아무 관계 없습니다.
state값이 정상적으로 들어가지 않아서 put할 때 undefined 같은 값으로 전달된건 아닌지 확인해보세요.