6주차 미니프로젝트 주차는 협업이 어떻게 이뤄지는지 알 수 있는 주차였다. 백엔드와 프론트가 같이 API설계를 하고 프론트끼리 와이어프레임을 만들고 컴포넌트를 쪼개보았다. 항해에서 요구하는 중요 능력 중 하나인 협업능력을 어떻게 길러야 하는지 알아갔다. 때론 의견 충돌이 있었고 다투기도 했지만 결과적으로는 나쁘지 않은 협업의 사례였다고 생각한다.
이번주차는 직접 팀끼리 어떤 웹사이트를 만드는 미니 프로젝트를 실행하였습니다. 전 주차까지는 파이어베이스를 이용하여 웹사이트를 만들었지만 이번에는 백엔드에서 만든 서버와 프론트에서 만든 클라이언트 페이지가 상호작용하는 사이트를 만들었습니다. 제가 맡은 파트는 axios를 이용하여 POST로 유저 정보 생성, 로그인 및 로그인 유지 였습니다.
const signupM = (formData) => {
return async (dispatch, getState, { history }) => {
// console.log(userId, userName, password, pwConfirm, userProfile, gender);
let userInfo = {
formData,
};
console.log(userInfo);
console.log('회원 가입 중입니다.');
await axios({
method: 'post',
url: 'https://95bdde78-b028-4db6-b139-9f7e8f06b2e5.mock.pstmn.io/post',
data: formData,
headers: {
'Content-Type': 'multipart/form-data',
},
})
.then((res) => {
console.log(res);
dispatch(getUser(userInfo));
window.alert('회원가입이 완료되었습니다.');
history.replace('/login');
})
.catch((error) => {
console.log(error, '회원가입에 실패했습니다.');
});
};
};
회원가입 시 아이디, 닉네임, 비밀번호, 비밀번호 확인, 성별, 프로필사진을 넣었는데 프로필 사진의 이미지는 json 형식이 아닌 formdata로 가져와야 했습니다. 이 formdata로 가져오는게 문제가 있어서 삽질을 하다가 결국 이미지 뿐만 아니라 모든 데이터를 formdata로 묶어서 가져올 수 있다는 것을 발견하여 그대로 진행하니 잘 작동이 되었습니다.
const signup = (e) => {
e.preventDefault();
const file = fileInput.current.files[0];
console.log(file);
const formData = new FormData();
formData.append('userId', userId);
formData.append('password', password);
formData.append('pwConfirm', pwConfirm);
formData.append('userName', userName);
formData.append('gender', gender);
formData.append('userProfile', file);
console.log('formData', formData);
return dispatch(userActions.signupM(formData));
};
이번 주차는 프론트엔드에서 분업을 어떻게 해야 일을 효율적으로 할 수 있는가 알 수 있었다. 중간에 팀원이 한 명 나가고 그 뒤로 하던 일을 바꿔서 진행하니 절대적인 시간이 부족했다. 이런 와중에 팀원과의 지금보면 사소하지만 그 때에는 큰 문제로 인해 감정소모가 있었다. 건강한 멘탈과 집중력이 필요한 한 주였다고 생각한다. 앞으로 현재 진행중인 클론코딩에서는 실력적인 부분의 발전도 중요하지만 협업의 측면에서 팀원과의 대인관계를 어떻게 유지하느냐가 큰 요소가 될 것 같다. 즉 조금 더 배려하고 이해하며 내 문제와 상대방이 느끼는 문제의 간극을 적절히 조절할 수 있으면 좋겠다. 끝까지 좋은 말투와 예의를 지키며 항해를 나아가야겠다. 물론 개인 공부도 놓쳐서는 안되는 일이다. 현재 공부하는 습관이 궤도에 오르고 있으니 남들보다 더디더라도 초조해하지 말고 묵묵히 나만의 길을 가야할 것이다.