프로젝트 하면서 리액트 구조와 기능을 익혀가고있다.
새롭게 알게된 것 또는 알았지만 써보니까 새로운것(?) 들이 참 많다
1. 리액트에서 ref 는 prop으로 전달될 수 없다
부모에서 ref를 선언해놓고
자식에게 전달할때는
자식 요소를 forwardRef 로 감싼 다음에 ref를 파라미터로 전달한다
export const ModalWrapper = forwardRef(
({ onClick, onSubmit, onChange }, ref) => {
return (
...
2. POST 리퀘스트 보내기
다짜고짜 input 데이터만 받아서 POST 하려니까 당연히 서버에서 받아주지 않는다.
FormData 객체를 사용하거나 아래와 같이 payload 방식으로 보낼 수 있다.
두 방식은 1. header의 필요 유무와 2. JSON형식 여부가 상이하다
const BASE_URL = 'https:// ... ';
export function postQuestion(content) {
const payload = {
subjectId: 7964, // url에서 받아와야함
content: content,
...
};
fetch(`${BASE_URL}/...`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(payload),
})
.then(response => {
if (!response.ok) {
// 요청이 성공하지 않은 경우 처리
throw new Error('Failed to post question');
}
return response.json(); // 서버에서 JSON 응답을 받을 것으로 가정
})
.then(data => {
console.log('Success:', data); // 성공적인 요청에 대한 응답 데이터 처리
})
.catch(error => {
console.error('Error:', error); // 에러 처리
});
}
하나씩 기능을 구현해가면서 깊은 막막함과 짜릿함을 번갈아가며 맛보고있다.
모르는게 많아서 다른 팀원들의 도움을 많이 받기도 한다.
혼자 다 감당하려면 못했을지도 모르는 것들도 있다. 나도 짐을 덜어주는 팀원이 되길
'개발 공부 일지 > React' 카테고리의 다른 글
리액트 - 모달 구현 방법 참조 (0) | 2024.09.05 |
---|---|
리액트 - 상태관리 위치 (부모? 자식?) (4) | 2024.09.05 |
리액트 - Vite비트로 시작하기 (0) | 2024.08.28 |
리액트 - onSubmit은 버튼이 아니라 form에 (0) | 2024.08.27 |
button disabled 조건부 렌더링 (0) | 2024.08.26 |