React

이은룡·2022년 6월 8일
0

React

목록 보기
1/2

리엑트: 자바스크립트의 라이브러리중 하나
app.js: html파일이 아니지만 index에서 불러내서 사용 JSX를 이용한다.

데이터 바인딩: 데이터를 집어넣는다. {}를 이용해서 넣을수 있다.
변수이용시 state를 써도됨

     //a = 변수 b = state변경을 도와주는 함수
let [a, b] =useState('변수');

변수와 state의 차이점
변수를 변경시 html을 변경해야함
state는 변경시 html은 자동 재렌더링이 됨

state 변경

let [a, a변경] =useState('변수');
a변경('변수변경');
//a = 변수변경이됨

array, object state 변경: 기존state와 신규state가 같으면 동작하지 않음 변수는 위치만 저장됨

let [a, a변경] =useState('변수');
<button onClick={() => {
  		  let copy = [...a]; //별개의 복사본
          //let copy = [a];
		  //기존a와 copy는 위치가 같기때문에 동작하지 않음
          copy[0] = '~~~';
          a변경(copy)}}>수정</button>

style 사용법

style={ {color : red} }

Destrucuring 문법
array 안의 변수를 각각 빼서 선언

let [a, b] = [1, 2];

onClick

//onClick = {함수}
<span onClick={ () => { ~~~ }}><js>

component: div들을 한 단어로 줄임
1.반복적인 html 축약
2.큰 페이지들
3.자주 바뀌는 것들

컴포넌트 사용법
함수 만들기
return()안에 html담기
<함수명></함수명>이용

function 함수명(){
  return(
    <div className="클래스">
      내용
    </div>
  )
}
<함수명></함수명>
<함수명/>
let 함수명 = () => {}

컴포넌트 단점: state 쓸 때 문제가 생김(다른함수 안의 변수 사용불가)

동적인 UI 만들기
1.html css로 미리 디자인완성
2.UI의 현재 상태를 state로 저장
3.state에 따라 UI 가 어떻게 보일지 작성

조건문 = 삼항연산자
{조건식 ? 참일때 실행할 코드 : 거짓일때 실행할 코드}

map함수 : 반복문

[1,2,3].map(function(a, i){ //i는 반복문이 실행할때마다 0부터 1씩증가하는 정수
    console.log(a);// 파라미터a는 array의 자료를 받음
    return '132134';//array안에 숫자를 담아줌[132134, 132134, 132134]
  })

props: 자식component에서 부모의 state 가져와 씀
1.자식컴포넌트 작명={state이름}
2.props파라미터 등록후 props.작명 사용

input 입력한 값 가져오기

<input onChange={(e)=>{console.log(e.target.value)}}/>

이벤트버블링 막기
(e) => {e.stopPropagation();}

0개의 댓글