CRUD중 CREATE구현을 위해 밤낮으로 애썼지만 개발이라는것은 정확하게 감잡기가 매우 어려운듯 하다.
실패했던 기록을 남긴다면
화면에서 dispatch 실행 => redux와 saga에서 ADD_POST_REQUEST 액션 호출 =>
saga에서 api호출 => api실행 이런순으로 이루어져야 했는데 현재까지 api실행이 되지않고 500에러가 났다. axios는 로컬서버환경이라 백엔드와 현재까지는 관련이 없고 내가 무언가 구현하지 못한것이 맞다.
내가 잘못한것 1
화면단에서 dispatch로 호출하는 함수를 적어주지 않았다.
그리고 type을 적어줬다.
[기존소스] :
const onSubmitForm = useCallback(() => {
console.log(data : {
postId: mainPosts.length + 1,
insertDt: "",
postState: radiobox,
postCity: area,
postGu: sigu,
mainField: mainField,
lang: language,
framework: framework,
projectExperience: experience,
tel: "",
imagePath: "",
postContent: intro
})
type: ADD_POST_REQUEST
// router.push('/');
}, [radiobox,area,sigu,mainField,language,framework,experience,intro]);
[올바른 소스] :
const onSubmitForm = useCallback(() => {
const data = {
postId: mainPosts.length + 1,
insertDt: "",
postState: radiobox,
postCity: area,
postGu: sigu,
mainField: mainField,
lang: language,
framework: framework,
projectExperience: experience,
tel: "",
imagePath: "",
postContent: intro
}
dispatch(
addPost(data)
);
// router.push('/');
}, [radiobox,area,sigu,mainField,language,framework,experience,intro]);
꽤나 어이없는 실수였는데도 발견하지 못한것이 창피하다.
다른사람의 도움을 받아 오류를 발견했고 그 이후 axios api함수를 호출할 때 올바르게 데이터가 들어가는 것까진 확인했으나, id를 찾을 수 없다는 통신오류가 있다. 이포스트는 해결되는 시점에 다시한번 수정하겠다.
(오류는 백엔드와 연결하면 자연스럽게 해결될 것이라 생각하지만 찝찝한 마음이다)
순간 항해를 계속 했다면 지금보다 훨씬 더 성장했을까 하는 생각을 해보게 됬는데 지금보단 더 성장했을거란 생각이 들었다.
개념이 잡히지 않은상태에서 next.js던 redux-saga던 사용하는것은 좋지못했던 선택이라 생각했다.
다음 프로젝트때는 개념이 완전 잡히지않은 채 새로운 것을 도입하는 것은 신중하게 선택해야 할 일이라는 걸 명심해야겠다.
아닛...사실 뭘 찾아내서 해결을 한것은 아니구요....ㅠ
예측을 하자면 코드를 짠 사람이 id값을 설정해준 적은 없어도 json서버가 자체적으로 id값을 지정해줘야 하는것이 아닐까....
하.... 찜찜하다.... 누가 이 찜찜함좀 풀어줬으면 ......
동작이 잘 되는데도 기분이 좋지않다.😩