GithubHelp home page GithubHelp logo

wkddb1359 / 33-2nd-wantus-frontend Goto Github PK

View Code? Open in Web Editor NEW

This project forked from wecode-bootcamp-korea/33-2nd-wantus-frontend

0.0 0.0 0.0 8.48 MB

김정준, 김현주, 안성주, 염종은

JavaScript 99.80% HTML 0.20%

33-2nd-wantus-frontend's Introduction

33기 2차 프로젝트 - wantUs 프론트 엔드

개요

  • 내용 : wanted 웹페이지 클론코딩 프로젝트
  • 기간 : 2022.06.07 ~ 06.17
  • 인원 : 총 6명 (프론트엔드: 4명, 백엔드: 2명)
  • 구현 기능
    • Nav, Footer, 메인페이지
    • 소셜 로그인 페이지
    • 마이페이지 / 이력서페이지 / 좋아요페이지
    • 채용 공고 리스트 / 채용 상세 페이지
    • 검색바 / 검색 결과

사용한 stack & tool (front-end 공통)

  • HTML5, CSS3(styled component), JavaScript, React
  • github, slack, trello

기능 구현 영상 링크

스크린샷 2022-06-17 오후 1 14 13

담당 페이지

김정준 : 로그인/회원가입, 메인페이지

김현주 : 채용공고리스트, 검색바/검색결과페이지

infinite scroll

  • 채용공고리스트

    • 페이지네이션 기능을 활용, 무한 스크롤 페이지 구현
    • interSection Observserf API를 활용한 성능 최적회
    • Query Parameter를 활용한 다중 필터 기능
    • 서버로부터 데이터 로딩 중 로딩 되는 데이터 수 만큼 skeleton UI를 띄워주도록 함
    • 검색 결과 페이지에서 좋아요 버튼 클릭 시 해당 내용 서버로 전달 (데이터 좋아요 페이지 연동)
    • 각 아이템 클릭 시 채용상세페이지로 이동 search
  • 검색바/검색결과페이지

    • 검색 모달 창 및 검색 결과 페이지 구현
    • useLocation을 활용, 검색 모달창에 입력한 내용을 백엔드 엔드포인트로 전달
    • 검색 결과 페이지에서 좋아요 버튼 클릭 시 해당 내용 서버로 전달 (데이터 좋아요 페이지 연동)
    • 각 아이템 클릭 시 채용상세페이지로 이동

안성주 : Nav/Footer, 마이페이지, 이력서페이지

1.Navbar

1.1 로그인시 Nav 메뉴 변경

Nav_텍스트_변경_AdobeExpress

  • 로그인 토큰 획득 👉 useEffect훅을 사용하여 Login useState 값 true로 변환 (로그인이 활성화를 표현하기 위해서)
  • 조건부 랜더링을 통한 로그아웃 텍스트 표출
  • 로그아웃 클릭 시 removeItem을 활용하여 토큰 제거 & Login useState 값 false로 변환

1.2 Nav dropmenu 구현

Nav_dropmenu_구현_AdobeExpress

  • 햄버거바 클릭 시 useState를 활용하여 dropmenu 값 true로 변환 👉 조건부 렌더링을 통한 dropmenu를 모달창으로 표현
  • onMouseEnter 를 통하여 1차 dropmenu에 마우스 커서를 올리면 해당 id값을 이용하여 2차 dropmenu 화면에 표현
  • dropmenu 외부 클릭 시 dropmenu 제거 👉 window 객체에 접근하여 브라우저 클릭 시 closeDropMenu함수 실행 👉 dropMenu값이 true인 상태에서 햄버거바 이외 클릭 시 setDropMenu 값을 false로 변환

2. Mypage

Mypage_AdobeExpress

  • 서버에서 받아온 사용자의 정보 및 사용자가 지원한 회사 지원 정보 데이터를 받아 페이지로 표출
  • 변하지 않는 텍스트와 지속적으로 변경되는 데이터를 구분하여 페이지 구현
  • 사용자 지원 현황 정보에 대한 filter 메소드를 통하여 수치를 지원 요약 현황판으로 표출

3. Resume_page

3.1 지원하기 👉 이력서 연결

이력서1_AdobeExpress

  • 사용자가 지원하기 페이지에서 첨부한 이력서를 서버로부터 받아 userFile에 저장
  • map 메소드를 활용하여 userFile에 저장된 파일 하나씩 카드 형태의 이력서 파일을 표현

3.2 이력서 삭제

이력서_삭제_AdobeExpress

  • 이력서 삭제 버튼 클릭 시 fileDelete 함수 실행 👉 서버로 method: 'DELETE'를 요청 👉 이력서 파일 삭제 완료

3.3 이력서 다운로드

이력서_다운로드_AdobeExpress

  • file-saver 라이브러리를 사용하여 사용자가 다운로드 버튼 클릭 시 파일 제목으로 된 파일을 다운로드

3.4 이력서 업로드

이력서_업로드_AdobeExpress

  • input 태그의 type="file을 통하여 사용자가 업로드 하고자 하는 파일에 접근 👉 userFile에 저장

염종은 : 채용상세페이지, 좋아요페이지

33-2nd-wantus-frontend's People

Contributors

wkddb1359 avatar jjk0104 avatar yumjong avatar nomadhj avatar sodalite1204 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.