[React] - State 배워보기

kang gicheon·2023년 7월 9일
post-thumbnail

레이아웃 만들기

function App(){
 
  let posts = '게시물1';
  return (
    <div className="App">
      <div className="black-nav">
        <div>개발 blog</div>
      </div>
      <div className="list">
        <h4>글제목</h4>
        <p>00월 00일 발행</p>
      </div>
    </div>
  )
}

(App.css)

div {
  box-sizing : border-box
}
.list {
  text-align : left;
  padding-left : 20px;
  border-bottom : 1px solid grey;
}

기초적인 레이아웃과 CSS를 적용하여 제작했습니다!

State 만드는 법

기존 자바스크립트의 방식처럼 let = 변수명 식으로 데이터를 저장할 수 있으나,
리액트에서는 변수가 아닌 state를 만들어서 데이터 저장이 가능합니다.

import { useState } from 'react';
import './App.css'

function App(){
 
  let [a,b] = useState('남자 코트 추천');
  let posts = '게시물';
  return (
    <div className="App">
      <div className="black-nav">
        <div>개발 blog</div>
      </div>
      <div className="list">
        <h4>글제목</h4>
        <p>2월 17일 발행</p>
        <hr/>
      </div>
    </div>
  )
}
  • import { useState } from 'react'를 작성합니다.
  • 원하는 곳에서 UseState('보관할 자료')를 작성해 State에 자료를 저장합니다.
  • 저장한 자료를 사용할시 let [a,b] = useState('남자 코트 추천'); a 자리에 state 이름을 자유롭게 작명한 다음 사용하면 됩니다.

    변수명을 직관적으로 작성하고 싶다면

    let [글제목, b] = useState('남자 코트 추천');

    이런식으로 작성을 할 수 있습니다.

    State를 쓰는 이유

  • **state는 변동사항이 생기면 state를 쓰는 html도 자동으로 재렌더링을 해줍니다.**
    function App(){ let post = '게시물'

    return (

    <h4>{ post }</h4>

    )}

    만약 기존 자바스크립트로 작성할시 변수안에 저장한 자료를 게시물1로 수정한다면
    post 변수안에 저장한 자료를 '게시물' -> '게시물2'로 수정하고 hrml도 수정해야 합니다

    그러나

    function App(){
    let [글제목, b] = useState('게시물1');

    return (

    <h4>{ 글제목 }</h4>

    )}

    state를 만들어서 {글제목}안에 데이터바인딩을 했다면
    html에 자동으로 재렌더링이 되어 html 또한 같이 수정됩니다.
    코드를 작성할때 자주 변경되는 내용의 경우 state를 통해 작성해서 사용하면 됩니다.

  • profile
    느리지만 깊게 개발을 공부합니다

    0개의 댓글