리액트 26

[React] Styled Component 사용하기

노마드코더 React JS 마스터 클래스 #2 STYLED COMPONENTS npm i styled-components 로 styled-components를 설치해준다. import styled from "styled-components"; function App() { return ( ); } export default App; 기존의 코드는 태그 안에 일일히 style을 지정해주는 것이였다. styled component 사용하면 className이나 style을 사용할 필요가 없다. styled component에서 import한 styled를 이용한다. div를 사용해 닫아줄 필요가 없다. 모든 style은 컴포넌트를 사용하기 전에 미리 컴포넌트에 포함된다. css코드를 css 방식 그대로 쓸 ..

FRONT/REACT 2022.01.19

[React] 리액트로 간단한 투두리스트 만들기

노마드코더 ReactJS로 영화 웹 서비스 만들기 #7 To Do List import { useState, useEffect } from "react"; function App() { const [toDo, setToDo] = useState(""); const [toDos, setToDos] = useState([]); const onChange = (event) => setToDo(event.target.value); const onSubmit = (event) => { event.preventDefault(); if (toDo === "") { return; } setToDos((currentArray) => [toDo, ...currentArray]); setToDo(""); }; console..

FRONT/REACT 2022.01.07

[React] UseEffect 사용하기(노마드코더 영화 웹서비스 만들기)

import Button from "./Button"; import styles from "./App.module.css"; import { useState, useEffect } from "react"; function App() { const [counter, setValue] = useState(0); const [keyword, setKeyword] = useState(""); const onClick = () => setValue((prev) => prev + 1); const onChange = (event) => setKeyword(event.target.value); useEffect(() => { console.log("I run only once."); }, []); // 처음 rend..

FRONT/REACT 2022.01.06

[리액트] 도서 검색 사이트 만들기

리액트로 도서 검색 사이트 만들기 기능 -책 제목, 출판사, 저자 별 단어 검색 -책 클릭시 상세정보 나오기 -페이지 클릭시 해당 페이지로 이동, 맨 끝 페이지/ 맨 앞 페이지 이동 -회원가입, 로그인 기능 리액트로 해본 첫 프로젝트였다. 백엔드 분들이랑 다른 프론트엔드 분들이랑 같이 작업했는데 백엔드에서 준 api 책 정보들을 프론트에서 받아 띄우는 식으로, 출판사, 저자, 책 이름별 검색시 필터링해 검색 단어가 포함된 책을 한 페이지 안 책의 개수만큼 렌더링하게 해줬다. 그리고 책 클릭 시 책 상세 정보 api를 받아 보여줬다. 페이징 처리 하는 부분에서 리액트에 원래 내장된 페이징 기능을 그대로 쓰지 않고 로직을 직접 짜서 했는데, 이 부분이 가장 어려웠던거 같다. 회원가입 부분에서는 post 방식..

FRONT/REACT 2021.09.05

[React] 노마드코더 영화 웹 서비스 만들기(4) - github에 배포하기

터미널에 npm i gh-pages 를 입력하여 gh-pages를 설치한다. gh-pages는 github에 웹페이지를 업로드하는 것을 허가해주는 모듈이다. git remote -v 를 입력하면 현재 깃허브 프로젝트 도메인을 확인할 수 있다. package.JSON으로 가서 맨 밑에 "homepage" : "https://{github username}.github.io/{project name}/" 을 추가한다. 그리고 package.JSON의 "script"에 마지막 두 줄을 추가한다. "scripts": { "start": "react-scripts start", "build": "react-scripts build", "test": "react-scripts test", "eject": "reac..

FRONT/REACT 2021.08.25

[React] 노마드코더 영화 웹 서비스 만들기(3) - Rendering

Rendering Movies.data.data.movies로 영화 데이터 목록들을 확인한다. es6를 사용해 이렇게 단축시킬 수 있다. getMovies = async() => { const {data : {data : {movies}}} = await axios.get("https://yts-proxy.now.sh/list_movies.json"); console.log(movies); } 이제 이 movies를 state안에 넣어야 한다. this.setState({movies : movies}); 를 최신버전 자바스크립트를 사용해 이렇게 짧게 표현한다. getMovies = async() => { const {data : {data : {movies}}} = await axios.get("http..

FRONT/REACT 2021.08.25

[React] 노마드코더 영화 웹 서비스 만들기(2) - Fetch API

Fetching Movies from API Axios 일반적으로 자바스크립트에서 data를 fetch하는 방식은 fetch()를 사용하는 것이지만 여기선 Axios를 사용한다. npm install axios Axios를 설치한다. API 가져오기 https://yts-proxy.now.sh/list_movies.json API를 가져올 YTS라는 사이트는 불법 토렌트 사이트라 도메인을 수시로 바꾸기 때문에 API URL 이 계속 변경된다. 그래서 니콜라스가 깃허브에 올린 YTS 사이트를 추적하는 주소를 사용한다. JSONView 라는 크롬 확장프로그램을 설치해서 보면 보기 좋게 바꿔준다. import React from "react"; import axios from "axios"; class App..

FRONT/REACT 2021.08.25