[React] JSX 01

λ°•μ†Œμ •Β·2023λ…„ 7μ›” 15일
1

React

λͺ©λ‘ 보기
7/26
post-thumbnail

JSXλž€? 🌰

μžλ°”μŠ€ν¬λ¦½νŠΈμ™€ HTML νƒœκ·Έλ₯Ό μ„žμ–΄ μ‚¬μš©ν•˜λŠ” 문법을 JSX(μžλ°”μŠ€ν¬λ¦½νŠΈ XML)라고 ν•©λ‹ˆλ‹€.
JSXλŠ” μžλ°” 슀크립트의 ν™•μž₯ λ¬Έλ²•μž…λ‹ˆλ‹€.
곡식 μžλ°”μŠ€ν¬λ¦½νŠΈ 문법은 μ•„λ‹ˆμ§€λ§Œ λŒ€λ‹€μˆ˜ λ¦¬μ•‘νŠΈ κ°œλ°œμžκ°€ μ‚¬μš©ν•˜λŠ” λ¬Έλ²•μž…λ‹ˆλ‹€.
JSX 문법을 μ΄μš©ν•˜λ©΄ HTML νƒœκ·Έμ—μ„œ μžλ°”μŠ€ν¬λ¦½νŠΈμ˜ ν‘œν˜„μ‹μ„ 직접 μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

function Body(){
    const number=1;
    return(
      <header>
      <h1>body</h1>
      <h2>{number}</h2>
      </header>
    );
  }

export default Body;

JSX와 μžλ°”μŠ€ν¬λ¦½νŠΈ ν‘œν˜„μ‹ 😌

  • ν‘œν˜„μ‹μ΄λž€?

    ν‘œν˜„μ‹μ΄λž€ κ°‘μŠΉλ‘œ ν‰κ°€λ˜λŠ” μ‹μž…λ‹ˆλ‹€.
    JSXλŠ” μžλ°”μŠ€ν¬λ¦½νŠΈ ν‘œν˜„μ‹μ„ HTML νƒœκ·Έμ™€ ν•¨κ»˜ μ‚¬μš©ν•  수 μžˆμ–΄ 가독성 μžˆλŠ” μ½”λ“œλ₯Ό μž‘μ„±ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

  • μ‚°μˆ  ν‘œν˜„μ‹: 숫자둜 ν‘œν˜„λ˜λŠ” 식

    function Body(){
       const numA=1;
       const numB=2;
       return(
           <div>
               <h1>body</h1>
               <h2>{numA+numB}</h2>
           </div>
       );
    }
    export default Body;

  • λ¬Έμžμ—΄ ν‘œν˜„μ‹: λ¬Έμžμ—΄ λ˜λŠ” λ¬Έμžμ—΄λ‘œ ν‰κ°€λ˜λŠ” 식

    function Body(){
       const strA="μ•ˆλ…•";
       const strB="λ¦¬μ•‘νŠΈ";
       return(
           <div>
               <h1>body</h1>
               <h2>{strA+strB}</h2>
           </div>
       );
    }
    export default Body;

  • 논리 ν‘œν˜„μ‹: μ°Έμ΄λ‚˜ κ±°μ§“μœΌλ‘œ ν‰κ°€λ˜λŠ” 식

    function Body(){
       const boolA=true;
       const boolB=false;
       return(
           <div>
               <h1>body</h1>
               <h2>{boolA || boolB}</h2>
           </div>
       );
    }
    export default Body;

πŸ’‘

  • XML

    데이터λ₯Ό μ •μ˜ν•˜λŠ” κ·œμΉ™μ„ μ œκ³΅ν•˜λŠ” λ§ˆν¬μ—… μ–Έμ–΄μž…λ‹ˆλ‹€.

0개의 λŒ“κΈ€