특정 폴더에 있는 png 이미지들을 webp로 변환시켜주는 툴을 만들어 보겠습니다. 간단하게 Node js 로 제작합니다. 우선 프로젝트 폴더를 만들어 주고 $ npm init 으로 프로젝트를 생성합니다. 그 후, 이미지 변환에 필요한 패키지들을 설치해 줍니다. (Global로 설치하셔도 무방합니다.) $ npm install imagemin imagemin-webp --save imagemin : 이미지 미니파이 해주는 툴imagemin-webp : imagemin의 webp 플러그인 설치가 완료 되었으면, /webp.js 파일을 만들어 줍니다. 퀄리티가 75% 이므로 손실이 있습니다. 만약 무손실 옵션을 사용하고 싶다면 로 작성해줍니다. 작성이 완료 되었으면 sources 폴더에 png 이미지 파일들..
GNB를 제외한 모든 페이지 개발은 완료 되었습니다.월/화/수 링크를 클릭하면 요일에 맞게 리스트를 그려주는 작업을 해보도록 하겠습니다. 우선 Gnb 컴포넌트의 a태그를 Link로 바꾸고, 경로를 메인 페이지, query string으로 요일을 명시합니다.props로 day를 받아 해당 요일이면 on 클래스를 추가해주는 작업도 합니다. /src/component/Gnb.js 이제 Gnb를 클릭하면 Main 컴포넌트에 props.location.search 로 day 값을 얻을 수 있습니다. day의 기본값은 월요일, day 값이 있다면 해당 요일로 set해주는 작업을 해줍니다. /src/container/Main.js 이어서, componentDidUpdate를 통해 day값이 바뀌면 새로운 리스트를 그..
에피소드를 누르면 해당 뷰어로 이동합니다. 지금까지 해왔던 방식과 동일하므로 어렵지 않습니다. 우선 이미지를 더미 데이터에 넣기 위해 이전 편에서 사용했던 episode_list.json 파일에 이미지 리스트를 추가합니다. /public/dummy/episode_list.json (전체 코드) 이후 전편과 동일하게 axios로 api를 불러와서 제목과, 이미지를 화면에 그려주면 끝납니다. props.match.params.episodeId 로 현재 에피소드의 ID와 일치하는 이미지들을 루프를 돌면서 그려줍니다. /src/container/Viewer.js 이번 강의의 모든 코드는 Github : tutorial_05 에서 확인하실 수 있습니다. 다음편 : React 강좌 tutorial 6 - GNB 처..
이번에는 웹툰 상세페이지를 만들어 보겠습니다.메인 페이지에서 감상하고 싶은 웹툰을 누르면 상세페이지로 이동합니다. 우선 Link 를 /webtoon/웹툰ID 로 수정해줍니다. 그러면 1장에서 만들었던 WebtoonHome 으로 이동합니다.그리고 웹툰ID는 props.match.params.webtoonId로 접근할 수 있습니다. (이는 1장 router 부분을 참고) 이 페이지에서는 웹툰의 상세정보와 해당 웹툰의 에피소드 리스트를 표현합니다.3장에서와 마찬가지로 더미 데이터를 우선 만들고 시작하겠습니다. /public/dummy/webtoon_detail.json (웹툰 상세 정보)/public/dummy/episode_list.json (에피소드 리스트) WebtoonHome 에서 axios로 방금 만..
이번장에서는 메인 페이지를 만들어 보겠습니다. 메인 페이지는 요일별 웹툰 리스트를 표시해줍니다. 해야할 일을 정의해보면,1. 요일별 웹툰 리스트 JSON 데이터 만들기 (더미 데이터)2. Main 컴포넌트에서 axios로 데이터 가져오기3. 요일별 웹툰 리스트 컴포넌트 만들기 우선 간단한 JSON파일을 만듭니다. (실제 프로젝트라면 REST API를 호출하겠지만, 이 강좌에 백엔드 영역은 포함되지 않습니다. 그냥 임시로 JSON 파일을 만들어서 활용하겠습니다.) 메인 화면에서 노출 될 웹툰 리스트이며, 각 웹툰은 요일을 가지고 있습니다. 이 파일을 axios를 이용해 불러올 것이기 때문에 src/폴더가 아닌 public/폴더의 dummy/폴더를 만들어서 넣어 두었습니다. /public/dummy/webt..
이번장에서는 헤더와 푸터, GNB등 공통으로 사용되는 컴포넌트를 만들어 보겠습니다.별 역할이 필요없는 애들이기 때문에 함수형 컴포넌트로 만들어 줍니다. /src/component/ Header 와 Footer를 간단하게 만들어 주시고,Gnb는 사실 요일탭인데 그냥 간단하게 3개만 만들었습니다. 메인 페이지(Main)와 웹툰 상세페이지(WebtoonHome)에 헤더, 푸터, GNB를 넣어줍니다. /src/component/Main.js 이런 화면이 나왔네요. 이번 강의의 모든 코드는 Github : tutorial_02 에서 확인하실 수 있습니다. 다음편 : React 강좌 tutorial 3 - 메인 페이지 (웹툰서비스 만들기)
- Total
- Today
- Yesterday