
기본 스티커 메모를 아시나요? 헤더 부분을 드래그하면 이동되는 것과 메모 입력하는 기능을 흉내내보았는데요. 제 사이트에는 딱 저 2가지 기능만 필요하여 저 부분만 작업했습니다! Memo.js import React, { useCallback, useRef, useState } from 'react'; import styled from 'styled-components'; const Wrap = styled.div` position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 200px; background: yellow; border: 1px solid #c0c0a4; box-sizing: border-box; `; c..
강의 유튜브 주소 : https://www.youtube.com/watch?v=V3QsSrldHqI&list=PLcqDmjxt30RtqbStQqk-eYMK8N-1SYIFn 성능최적화 구글확장플러그인 devtools로 확인하여 테스트한 후에 최적화가 필요하면 진행한다. 최적화작업은 작업의 마지막에 한다. useEffect와 useRef로 재렌더링이 되는 이유를 디버깅할 수 있는 방법이 있다. ref를 만들어서 props나 state들을 넣고 비교하면서 검사하면된다, import React, {useCallback, useEffect, useRef}from 'react'; const Test = () => { const Ref = uesRef([]); useEffect(() =>{ // 콘솔에 찍어보자 co..
강의 유튜브 주소 : https://www.youtube.com/watch?v=V3QsSrldHqI&list=PLcqDmjxt30RtqbStQqk-eYMK8N-1SYIFn 리액트 최적화를 알기 위해서는 렌더링되는 부분을 이해해야한다. class함수는 render부분이 리렌더링되고 함수컴포넌트는 전체가 리렌더링이 된다. import React, { Component } from 'react'; class Test extends Component{ state = { counter : 0 }; onClick = () => { this.setState({}); }; render(){ return ( 클릭 ); } } Test코드에서 버튼을 클릭하면 리렌더링이 될까?? onClick 함수에서 setState하고 ..