[ReactJS] React로 영화 서비스 만들기 : 2.1. React의 설치와 기초
작성:    
업데이트:
카테고리: ReactJS CloneCoding
태그: ReactJS, ReactJSCloneCoding, SPA
Import React
React CDN(다운로드 링크)을 html 파일에 Import해보자.
<script crossorigin src="https://unpkg.com/react@17/umd/react.production.min.js"></script>
<script crossorigin src="https://unpkg.com/react-dom@17/umd/react-dom.production.min.js"></script>
- React JS : App이 interactive하게 만들어주는 library
- React-DOM : 모든 React element들을 HTML body에 둘 수 있게 하는 library
React JS
조금 어려운 방식이고, 실제로는 이렇게 작업하지는 않겠지만, 기본 동작을 알기 위한 코드
React.createElement : Element 생성
const span = React.createElement("span");
span 태그 element를 만들고, 이를 span에 저장
element에 property 부여
// special-span id 부여
const span = React.createElement("span", { id: "special-span" });
// color: red; style 부여
const span = React.createElement("span", style: { color: "red" });
- 두 번째 argument에 중괄호를 넣고, property와 value 넣기
- django의 context와 비슷
element에 content 부여
const span = React.createElement("span", { id: "special-span" }, "Hello, I'm a span");
- 세 번째 argument에 string 형식으로 넣기
React-DOM
- 화면에 React element를 rendering 할 때 사용
ReactDOM.render() : React element HTML에 삽입
const root = document.getElementById("root");
const span = React.createElement("span");
ReactDOM.render(span, root);
- “#root element 내에 span element를 넣어 render하겠다!”
- React JS로 만든 react element를 HTML에 반영하겠다.
다중 삽입할 때 : array 사용
const root = document.getElementById("root");
const h3 = React.createElement("h3", null, "Hello, I'm a h3" );
const btn = React.createElement("button", null, "Click me");
const container = React.createElement("div", null, [h3, btn]);
ReactDOM.render(container, root);
- “container div 안에 h3과 btn을 넣고 root 내에 render하겠다.”
- array에 element 삽입
JavaScript와 React
- Vanilla JS : HTML element 만들기 → JS에서 수정
- React JS : React element에서 다 만들기 → HTML에 반영
- element의 업데이트에 더 용이
Event in React
const btn = React.createElement("button", {
onClick: () => console.log("I'm clicked"),
}, "Click me");
- btn element에 “click” eventListener를 add한 상황
댓글남기기