프레임워크는 꼭 써야되는것과 지켜야 되는 룰이 있는 반면, 라이브러리는 쓰든 안쓰든 개발자 마음!
1. 라이브러리
자주 쓰는 기능들(화면을 만들기 위한)을 모아 놓은 것
2. 프레임 워크
소프트웨어 개발 시 복잡한 문제를 해결하거나 서술하는 데 사용하는 기본 개념 구조
REACT : 사용자 인터페이스를 만들기 위한 javascript 라이브러리
1.정의
2. 특징
3. 작동원리
ssac 교육생들은 이 전에 해야하는 환경은 갖추어져 있기때문에 vsc 터미널에서 바로 진행
1. node.js 설치
$ node -v
: 버전 확인 2. react 프로젝트 앱 설치
$ create-react-app [프로젝트이름]
3. yarn 설치
$ npm install -g yarn
4. 실행
$ cd[프로젝트 앱 이름]
$ yarn start
JSX는 그럼 자바스크립트인가요?
-> ㄴㄴ 리액트에서만 쓰이기 때문에 공식적인 자바스크립트 문법은 아니다.
1. 정의
2. 특징
3. 작동원리
4. 규칙(주의사항)
1) 태그는 닫혀 있어야 한다.
<br></br> <hr></hr>
2) 리턴안에 부모태그가 꼭 있어야한다.
import React from 'react';
function App(){
return(
<div>
<h1>ssac 3기</h2>
<h2>react 수업</h2>
</div>
)
}
export default App;
3) jsx 내부에서 js 표현식을 사용시 중괄호로 감싸서 사용
import React from 'react';
function App(){
const name = ssac;
return(
<div>
<h2>hello! { name }</h2>
<div>
)
}
export default App;
4) 조건부 연산자
5) 조건부 연산자 : 삼항연산자, &&연산자
import React from 'react';
function App(){
const name = "ssac";
return(
<div>
{ name === "ssac" ? <h2>ssac 입니다.</h2> : <h2>ssac이 아닙니다</h2> }
</div>
)
}
export default App;
import React from 'react';
function App(){
const name = "ssac";
return(
name && <div>ssac 입니다</div>
)
}
export default App;
6) 주석
/* */
을 사용한다.7) inline style CSS 는 객체형태로 작성
import React from 'react';
function App(){
const name = "ssac";
const style = {
backgroundColor: "red",
fontSize: "2vw",
padding: 10
}
return(
<div>
<div style={style}>{name}</div>
</div>
)
}
export default App;
-> inline, app.css 에 css 작성
리액트의 🌺
import React, {Component} from 'react';
class App extends Component {
render() {
const name = '이상훈';
return <div>{name}</div>
}
}
export default App;
import React from 'react';
function App() {
const name = '이상훈';
return <div>{name}</div>
}
export default App;
property의 약자로, 부모에게 받아온 데이터
리액트의 Data Flow는 단방향 형식으로 부모에서부터 자식으로 이동하기 때문에 거꾸로 올라갈 수 없다.
-> 따라서 props에 있는 데이터들은 수정이 불가능하며 오직 안에있는 값을 꺼내서 사용할수만 있습니다.
import React, { Component } from 'react';
const Test = props => {
const { hello, children } = this.props
return(
<div>
<h1>안녕, 난 { hello } 이야 !</h1>
<br></br>
<h2>children의 값은 { children } 이야!@</h2>
</div>
)
}
export default App;
or
import React, { Component } from 'react';
const Test = ({ hi, children })=> {
const { hello, children } = props
return(
<div>
<h1>안녕, 난 { hello } 이야 !</h1>
<br></br>
<h2>children의 값은 { children } 이야!@</h2>
</div>
)
}
export default App;
리액트의 🌺
react에서 유동적인 데이터를 사용할 때 state 사용 (별도의 상태가 필요할때)
내일 과제 풀면서 다시 수정,보완 할 예정
1. state
state = { enter: 0 };
2. setState
3. useState
빌드하지 못하는 단점 때문에 잘 사용하지 않음
html에 react 추가
https://ko.reactjs.org/docs/add-react-to-a-website.html#gatsby-focus-wrapper
CDN 링크
https://ko.reactjs.org/docs/cdn-links.html#why-the-crossorigin-attribute
달달~🎶🎶🎶
1. jsx (6문제)
2. 컴포넌트 (1문제)
3. props (3문제)
4. setState, useState(내일)
리액트를 전에 다뤄봤었기도 했고, 강사님 또한 이해하기 쉽게 설명 + 반복 해주시고, 핵심만 딱 짚어주신거 같아서 리마인드가 아주 잘 되었고, 예제를 풀때 가장 재미 있었던 수업이였다.
하지만 전에 다뤄보지 않았거나, 선수학습이 되어 있지 않거나, js가 조금 미흡하신 동기분들은 조금 힘드셨을 수도 있을 것 같다. 하지만 ssac 3기 동기분들은 어떻게든 해내시는 분들이라 크게 걱정되지 않는다.
(ps. 내 기억으론 OT때 js, react 공부 하셨다고 하신분이 여럿 계셨던거 같은데 수업 때 보면 겸손 하신건지, 진짜 모르시는건지 잘 모르겠다..)