바닐라 JS 웹 컴포넌트 개발기
feat: ReactJS
초기 세팅.
컴파일러 세팅
Babel을 사용함으로 ES6+ 이상의 JS 코드를 하위버전 문법으로 변환시켜주고 ES6+문법을 사용하고자 하였다.
Babel packages 설치
babel.config.json
Local Server
VS Code
Live Server
NPM Package
serve
(Selected, VS Code를 사용하지 않는 케이스가 있다고 생각)
개발.
HTML 세팅
HTML파일을 만들고 동적으로 생성할 수 있도록 script 파일을 연결합니다.
Core Component
공통 Component class를 React Lifecycle 기반으로 만듭니다.
constructor
: 각 컴포넌트는 target 원소를 가지고 props로 다른 컴포넌트로 내려줄 수 있습니다.setup
: 초기값 지정 initStatetemplate
: render의 UI 부분을 담당하여 컴포넌트화 시킬 수 있도록 합니다.setState
: React와 같이 state가 변하면 해당 부분을 찾아 리렌더링을 시킵니다.mounted
: React LifecyclecomponentDidMount
updated
: React LifecyclecomponentDidUpdate
unmounted
: React LifecyclecomponentWillUnmount
Component를 App.js가 상속받습니다.
App.js를 index.js에서 호출하여 화면에 렌더합니다.
Next Step.
리렌더링 성능이 좋지 않아 이 부분은 React의 휴리스틱 알고리즘 활용하여 해당 방식을 적용해볼 것이다.
React hook을 구현하고 class형 컴포넌트를 함수형으로 바꿔볼 생각이다.
Last updated