React

    Input - Date, DatePicker library 📅

    react에서 date를 처리하는 것은 여간 까다로운 작업이 아닐 수 없습니다. format을 다 처리해야 하기 때문이죠. react에서 input을 생성하고 type을 date를 줍니다. date input value의 date format은 YYYY-MM-DD입니다. const [date, setDate] = useState(new Date()); const getStringDate = (date) => { let year = date.getFullYear(); let month = date.getMonth() + 1; let day = date.getDate(); if (month < 10) { month = `0${month}`; } if (day < 10) { day = `0${day}`; } ..

    [ Optimize ] useCallback

    useMemo 에 이어서 useCallback 에 대해서 알아봅시다. 이번에도 Dingdong Ditch(띵똥 벨튀) component를 뜯어서 개조를 해볼것입니다. 전 포스팅에서도 말했지만 useMemo, useCallback 서로비슷합니다. useMemo 기반에서 추가된게 useCallback 이니까영 Memoization 이란? 주어진 입력값에 대한 결과를 저장함으로써 같은 입력값에 대해 함수가 한 번만 실행되는 것을 보장을 의미합니다. useMemo: memoization 된 값을 반환 합니다. useCallback: memoization 된 함수를 반환 합니다. useCallback의 간단한 예시를 들자면 1. useCallback(() => fn, [deps]); // deps의 데이터가 변하..

    [ Optimize ] useMemo

    useMemo useMemo에 대해 공부를 하였지만 어떤 예제를 들어야 할지 애매모호 해서 상당히 골치 아팠습니다. 그러다 어제 올린 React.memo 에서 띵똥 벨튀 예제를 가져와서 쓰면 괜찮을것 같아서 DindongDitch를 개조해 보았습니다. useMemo 를 공부하면 useCallback 은 필연으로 공부를 하게 됩니다. 두가지 비슷하지만 확연히 차이가 있습니다. Memoization 이란? 주어진 입력값에 대한 결과를 저장함으로써 같은 입력값에 대해 함수가 한 번만 실행되는 것을 보장을 의미합니다. useMemo: memoization 된 값을 반환 합니다. useCallback: memoization 된 함수를 반환 합니다. useMemo의 간단한 예시를 들자면 1. useMemo(() =..

    [ Optimize ] React.memo

    React 최적화를 하기 위해 useMemo, React.memo, useCallback 세가지를 보통 이용 합니다 (제가 아직 배운게 이것밖에 없어서) 그중에서 React.memo에 대해 공부하며 예제를 간단히 만들어보며 연구를 했는데 괜찮은 예제가 떠올라서 이렇게 공부한걸 올리는 겸 예제를 공유 해봅니다. React.memo를 배우기전에 Memoized에 대해서 알아야하는데 Memoized는 주어진 입력값에 대한 결과를 저장함으로써 같은 입력 값에 대해 함수가 한 번만 실행되는 것을 보장하는것을 의미합니다. ( 알고리즘 방식이기도 합니다. ) React.memo는 Component의 결과값을 Memoized를 합니다 한국에서 어릴때 유행했던 벨튀(DingDong Ditch) 를 바탕으로 Compone..

    [ 2022-03-29 ] React Router

    Router, Routing 개념 설명 Page Routing 설명

    React - useRef DOM 제어

    리액트를 공부하다 보면 uesRef를 공부하게 될건데 useRef 는 JavaScript를 사용할때, 특정 DOM 을 컨트롤하기 위해 사용합니다, 주로 vanillaJS에서 document.querySelector, document.getElementById 와 같은것입니다. 간단한 예제를 보면서 확인을 해보도록 할게요. import { useState, useRef } from "react"; function App() { const [userID, setUserID] = useState(""); const [userPW, setUserPW] = useState(""); const handleChangeID = (e) => { setUserID(e.target.value); }; const handle..

    [ 2022-03-24 ] [ React ] LifeCycle, useEffect

    [ 갤럭시 탭 ] S펜으로 이용하여 노트처럼 메모를 했던 흔적

    React & Node.js 연동하기

    이 포스트를 쓰기 전에 여러 블로그 포스트를 보고 왔습니다. https://velog.io/@autumndr3ams/210802-React-Node.jsexpress-연결하기 https://baegofda.tistory.com/210 https://baegofda.tistory.com/211 일단 Node.js 가 설치되어 있다는 가정하에 진행을 하겠습니다. 1. 일단 작업 할 폴더(testReact)를 만든 뒤 cmd 또는 파워쉘을 키고 npx create-react-app client 를 쳐줍니다. 다음과 같이 나왔다면 제대로 설치된 것 입니다. 2. 그럼 폴더에 client 폴더가 있을건데 전 testReact 라는 폴더에 만들었으니 testReact 라는 폴더안에서 커맨드 창을 열고 server을..

    React - Props

    보통 처음에 state를 배우고 나면 props 개념을 배우게 됩니다. props는 보통 상단 componet에서 하단 component에게 이름을 붙여 값을 전달하는 방식이며 여러 데이터를 넘길수 있습니다. Props를 사용하는 이유는 상단 컴포넌트에서 하단 컴포넌트에게 데이터를 이동시켜주기 위함입니다. App.js import React from "react"; import MyHeader from "./components/MyHeader"; import Counter from "./components/Counter"; function App() { return ( ); } export default App; Counter.js import React, { useState } from "react";..

    React - State

    전에 봤던 vanilla js 의 counter 프로그램을 React로 만든다고 한다면, App.js import React from "react"; import Counter from "./components/Counter" function App() { return ( ); } export default App; 기본적으로 Counter 이라는 Component 를 이용하여 count increment, decrease 를 하는 코드를 만들어 볼것입니다. Component.js import React, { useState } from "react"; const Counter = () => { const [count, setCount] = useState(0); const onIncrease = () ..