-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
회원가입 (아이디, 비번, 이메일 조건 포함) 1차 commit #3
Conversation
app.js
Outdated
const email = me.email; | ||
|
||
// key error (필수 입력 정보 없을 경우) | ||
if ( username === undefined || userid === undefined |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
username === undefined 는 !username 으로 축약될 수 있을 것 같습니다! 개선하면 코드 가독성이 더 좋아지지 않을까 싶습니다
|| gender === undefined) { | ||
const error = new Error("KEY_ERROR"); | ||
error.statusCode = 400; | ||
throw error; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
const error = new Error("KEY_ERROR");
error.statusCode = 400;
throw error;
해당 부분은 utils
폴더의 throwError(400, 'KEY_ERROR')
함수를 사용해서 축약될 수 있을 것 같습니당
// email . @ 필수 포함 정규식 (프론트와 협의) | ||
const emailRegex = /^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$/; | ||
|
||
if (!emailRegex.test(email)) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
!emailRegex.test(email)
해당 부분은 utils
폴더의 isValidData(emailRegex, email)
함수를 사용해서 축약될 수 있을 것 같습니당
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
작업 수고 많으셨습니다! 재사용 될 수 있는 부분만 첨언해 두었어요 확인해보시고 사용해보시면 좋겠습니다!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
현재 app.js 에서는 myDataSource 를 호출하지 않고 있어서, 해당 부분은 머지하시면 제가 추가하도록 하겠습니다~ 머지 하셔도 될 것 같습니다
1. 본 PR이 우리 팀의 웹 서비스 제품성에 어떠한 기여를 하였고,
사용자에게 어떠한 기대효과를 전달하는지 작성해주세요.
고객의 회원 전환 및 유입을 최우선으로 하여, 우선 회원가입 유저를 늘리고, 회원가입 중 이탈을 줄이기 위해,
주소와 같은 세부 정보들은 결제창에서 받고, 회원가입 시 받는 유저 정보는 간소화 하였습니다.
또한, 비밀번호와 아이디 특수문자와 길이 조건을 보안을 지킬 수 있는 선에서 최소한의 제한을 두었습니다.
유저는 최소한의 시간을 투자하여, 회원가입을 하고 관심 있는 상품 리스트들을 보며, 동시에 장바구니에 담아둘 수 있습니다.
회원가입을 한 뒤 장바구니에 담아두면, 유저 입장에서는 저장 기능으로 활용할 수 있기에,
회원가입에 소요되는 시간 단축이 큰 역할을 할 것입니다.
바쁜 현대사회에, 쇼핑을 틈틈이 시간이 날 때마다 하게 되면, 장바구니 담기와 결제하기 단계를 동시가 아닌, 시간 차가 발생합니다. 장바구니에 담아두고, 여러 상품을 시간을 두고 비교를 할 수도 있습니다. 간편한 회원가입을 통해 추후 쇼핑을 이어서 할 수 있도록, 장바구니 기능을 활용하여 저장 기능을 할 수 있는 기대효과가 있습니다.
2. 이 브랜치에서 어떤 내용을 개발했는지 큰 제목과 상세 내역을 적어주세요.
회원가입 기능
3. 개발한 화면을 캡쳐해서 첨부 해 주세요.
- (drag & drop 또는 첨부파일 추가)
4. 이 브랜치에서 개발하면서 느꼇던 개발 성장포인트를 적어주세요.
이전의 과제들과 Project 1의
회원가입 기능과 크게 다르지 않을 것이라 생각했는데,
닥터마틴의 실제 페이지의 '회원가입 절차'에 따라 코드를 짜보니,
여태 했던 기능의 이상의 부분들도 고려해야 했습니다.
가령,
이런 과정에서, 제가 일상에서 회원가입을 할 때에, 사이트마다 다르게 보이는 메세지들이 어떤 작업을 거쳤을지
고객이 아닌, 백엔드 개발자의 입장에서 알 수 있게 되었습니다.