frontendschool5 / final-21-wemet21-already29 Goto Github PK
View Code? Open in Web Editor NEW데일리룩을 공유하며 지속 가능한 패션을 함께 만들어가는 서비스👕👗👖🩳👒
데일리룩을 공유하며 지속 가능한 패션을 함께 만들어가는 서비스👕👗👖🩳👒
로그인 이메일주소와 로그인에 대한 유효성 검사 기능 구현 완료
게시글 상세 페이지에 해당하는 기능 구현 중
하은님과 함께 게시글 상세 페이지 구현 중입니다.
공통으로 들어가는 버튼 컴포넌트 UI를 구현완료
하은님과 함께 components 폴더에 common이라는 폴더를 만들어서 그 안에 버튼 컴포넌트 UI파일 만들어서 구현
상품 관련된 기능들 구현 완료
기타 사항
공통으로 사용 될 하단에서 나오는 바텀시트 모달 컴포넌트 제작하였습니다.
공통으로 사용할 에러 페이지 개발 완료
재사용성 고려한 에러 페이지 개발 완료했습니다
props와 children을 통해 에러페이지 이미지와 텍스트 바꿀 수 있도록 개발했습니다.
SNS 공유하기 기능 개발중입니다
개발 로컬 서버에서는 링크가 전달이 제대로 되지 않아 추후 배포용 url 넣어줘야 할 것 같습니다.
게시글 상세페이지 댓글 관련 기능 구현 완료하였습니다.
기타 사항
공통으로 사용할 헤더 컴포넌트 개발 완료
자주 사용될 헤더 컴포넌트를 객체 형태로 저장해 props에 전달되는 type값을 따라 jsx가 반환되도록 개발했습니다.
중복되는 ui는 props를 통해 요소들을 조작할 수 있도록 개발했습니다.
공통으로 사용할 팔로우 언팔로우 버튼 기능 구현
회원가입 페이지 이메일 유효성 검사 기능 방법 숙지 후 기능 추가 필요
기타 사항
전역에서 공통으로 사용할 모달 컴포넌트 개발
기타 사항
다른 사용자의 계정을 검색하고 팔로우를 할 수 있는 기능을 구현
하은님과 함께 이미지와 게시글 작성 ui와 기능 구현 작업을 진행하였습니다.
기타 사항
사용자 프로필, 마이 프로필, 프로필 수정 기능 구현 중
이메일로그인 페이지 UI와 기능구현 완료
기타 사항
로딩 중 렌더링 되는 컴포넌트 구현 완료
로딩 컴포넌트 구현
기타 사항
useInfiniteScroll 커스텀 훅 제작
쿼리스트링 형식으로 불러오는 API 요청이 있어 커스텀 훅 제작했습니다.
const { getData, page, isLoading } = useInfiniteScroll("post/feed", pageEnd);
사용하실 때 첫번째 인자로 fetch할 path 주소 넘겨주시면 되고, 위 예시처럼 넘겨주시면 됩니다.
두번째 인자로는 스크롤 맨 끝에 있는 HTML 요소에 useRef 통해서 연결해서 넘겨주시면 됩니다.
보통 그냥 빈 div태그 넣고 레퍼런스 연결하는 것 같더라구요
반환값으로는 getData, page, isLoading 이 세가지가 있는데, 객체 형태로 return 되니까,
디스트럭처링 하셔서 원하는 반환값만 뽑아서 사용하시면 될 거 같아요
getData : function
실행시키시면 Promise 객체 반환합니다. then 체이닝 하셔서 json 데이터 뽑아서 활용하시면 될 거 같습니다.
page : Number
현재 페이지가 어디인지 반환해줍니다.
아까 인자로 전달한 pageEnd 요소에 도달했을 때 +1 되도록 로직이 짜여있습니다.
페이지 값이 변했을 때 getData 함수 실행할 수 있도록 코드 작성하시면 됩니다.
위 두개 반환값으로 무한 스크롤 구현하시려면 아래 코드 예시 참고해서 작성하시면 됩니다.
const [posts, setPosts] = useState(null)
const [post, setPost] = useState(null)
useEffect(() => {
getData(page)
.then((res) => res.json())
.then((json) =>
setPost((prev) => {
if (prev) {
return [...prev, ...json.posts];
} else {
return json.posts;
}
})
);
}, [page]);
isLoading : Boolean
기타 사항
Splash 화면 구현
캐릭터 이미지 변경과 IntroLogin화면에서 로그인 버튼 hover시 메일 이미지가 깨지는 현상 수정 필요
회원정보 수정 기능 구현 중
로그인 후 넘어가는 홈 피드 화면의 UI와 기능을 구현 중
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.