์ฒซ ๋ฒˆ์งธ ์ปดํฌ๋„ŒํŠธ

2025. 6. 4. 15:38ยท๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ปSTUDY/React
๋”๋ณด๊ธฐ

1. ์ปดํฌ๋„ŒํŠธ

  • ๋งˆํฌ์—…, CSS, JS๋ฅผ ์•ฑ์˜ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ UI ์š”์†Œ

1-1. ์ปดํฌ๋„ŒํŠธ ๋‚ด๋ณด๋‚ด๊ธฐ

`export default` ๋Š” ํ‘œ์ค€ JavaScript ๊ตฌ๋ฌธ์œผ๋กœ ๋‚˜์ค‘์— ๋‹ค๋ฅธ ํŒŒ์ผ์—์„œ ๊ฐ€์ ธ์˜ค๋Š” ๊ธฐ๋Šฅ์ด๋‹ค.

1-2. ํ•จ์ˆ˜ ์ •์˜ํ•˜๊ธฐ

`function Profile() {}`์„ ์‚ฌ์šฉํ•˜๋ฉด `Profile`์ด๋ผ๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํ•จ์ˆ˜๋ฅผ ์ •์˜.

React ์ปดํฌ๋„ŒํŠธ๋Š” ์ผ๋ฐ˜ JS ํ•จ์ˆ˜์ด์ง€๋งŒ, ์ด๋ฆ„์€ ๋Œ€๋ฌธ์ž๋กœ ์‹œ์ž‘ํ•ด์•ผ ํ•˜๋ฉฐ ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ์ž‘๋™ํ•˜์ง€ ์•Š๋Š”๋‹ค.

 

1-3. ๋งˆํฌ์—… ์ถ”๊ฐ€ํ•˜๊ธฐ

์ด ์ปดํฌ๋„ŒํŠธ๋Š” `src` ๋ฐ `alt` ์†์„ฑ์„ ๊ฐ€์ง„ `<img />`ํƒœ๊ทธ๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. HTML์ฒ˜๋Ÿผ ์ž‘์„ฑ๋˜์žˆ์ง€๋งŒ ์‹ค์ œ๋กœ๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์ด๋ฉฐ,

์ด ๊ตฌ๋ฌธ์„ JSX๋ผ๊ณ  ํ•œ๋‹ค.

return <img src="https://i.imgur.com/MK3eW3As.jpg" alt="Katherine Johnson">;

// ๋งˆํฌ์—…์ด ๋ชจ๋‘ returnํ‚ค์›Œ๋“œ์™€ ๊ฐ™์€ ๋ผ์ธ์— ์žˆ์ง€ ์•Š์€ ๊ฒฝ์šฐ ๊ด„ํ˜ธ๋กœ ๋ฌถ๋Š”๋‹ค.
return (
  <img src="https://i.imgur.com/MK3eW3As.jpg" alt="Katherine Johnson">;
)

 

๊ด„ํ˜ธ๊ฐ€ ์—†์œผ๋ฉด `return` ๋’ท ๋ผ์ธ์˜ ๋ชจ๋“  ์ฝ”๋“œ๋Š” ๋ฌด์‹œ๋œ๋‹ค.

 

1-4. ์ปดํฌ๋„ŒํŠธ ์‚ฌ์šฉํ•˜๊ธฐ

function Profile() {
	return (
    	<img src="https://i.imgur.com/MK3eW3As.jpg" alt="Katherine Johnson" />	
    )
}

export default function Gallery() {
	return (
         <section>
           <h1>Amazing scientists</h1>
           <Profile />
           <Profile />
           <Profile />
        </section>
    );
}
  • `<section>` ์€ ์†Œ๋ฌธ์ž์ด๋ฏ€๋กœ React๋Š” HTML ํƒœ๊ทธ๋ฅผ ๊ฐ€๋ฆฌํ‚จ๋‹ค.
  • `<Profile />` ์€ ๋Œ€๋ฌธ์ž P๋กœ ์‹œ์ž‘ํ•˜๋ฏ€๋กœ React๋Š” `Profile`์ด๋ผ๋Š” ์ปดํฌ๋„ŒํŠธ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ์ดํ•ด.
  • `Profile`์ปดํฌ๋„ŒํŠธ๋Š” `Gallery`์•ˆ์—์„œ ๋ Œ๋”๋ง ๋˜๊ธฐ ๋•Œ๋ฌธ์— `Gallery`๋Š” ๊ฐ `Profile`์„ "์ž์‹"์œผ๋กœ ๋ Œ๋”๋งํ•˜๋Š” "๋ถ€๋ชจ ์ปดํฌ๋„ŒํŠธ"๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค.
์ปดํฌ๋„ŒํŠธ๋Š” ๋‹ค๋ฅธ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋ Œ๋”๋งํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๊ทธ ์ •์˜๋ฅผ ์ค‘์ฒฉํ•ด์„œ๋Š” ์•ˆ๋œ๋‹ค.
export default function Gallery() {
	// ์ ˆ๋Œ€ ์ปดํฌ๋„ŒํŠธ ์•ˆ์— ๋‹ค๋ฅธ ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ •์˜ํ•˜๋ฉด ์•ˆ๋จ!!
    function Profile() {
    	// ...
    }
    // ...
}

// ์ตœ์ƒ์œ„ ๋ ˆ๋ฒจ์—์„œ ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ •์˜ํ•ด์•ผํ•œ๋‹ค.
export default function Gallery() {
	// ...
}
// ์ตœ์ƒ์œ„ ๋ ˆ๋ฒจ์—์„œ ์ปดํฌ๋„ŒํŠธ๋ฅผ ์„ ์–ธํ•œ๋‹ค.
function Profile() {
	// ...
}โ€‹
์ž์‹ ์ปดํฌ๋„ŒํŠธ์— ๋ถ€๋ชจ ์ปดํฌ๋„ŒํŠธ์˜ ์ผ๋ถ€ ๋ฐ์ดํ„ฐ๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ, ์ •์˜๋ฅผ ์ค‘์ฒฉํ•˜๋Š” ๋Œ€์‹  props๋กœ ์ „๋‹ฌํ•œ๋‹ค.
์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋™์ผ์กฐ๊ฑด (์ƒˆ์ฐฝ์—ด๋ฆผ)
'๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ปSTUDY/React' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • ํ๋ฆ„ํŒŒ์•…ํ•ด๋ณด๊ธฐ
  • props
  • return ์•ˆ์— Fragement ๋˜๋Š” ๋ถ€๋ชจํƒœ๊ทธ๋กœ ๋กœ ๊ฐ์‹ธ๋Š” ์ด์œ 
  • Default Export ์™€ Named Export
jmjm
jmjm
  • jmjm
    /* jmjmjm */
    jmjm
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (129)
      • ๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ปSTUDY (91)
        • HTML (9)
        • CSS (25)
        • SASS (4)
        • JavaScript (17)
        • jQuery (9)
        • Publishing (8)
        • Git (11)
        • React (6)
        • Vue (0)
        • ์›น์ ‘๊ทผ์„ฑ (1)
        • Gulp (1)
      • ๐ŸฃcodeLab (27)
      • ๐ŸŒˆetc (8)
      • ๐Ÿฅฐ ์ผ์ƒ (2)
      • ๐ŸŒŸ์ฝ์–ด๋ณด๊ธฐ (1)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ํƒœ๊ทธ
  • ๋งํฌ

  • ๊ณต์ง€์‚ฌํ•ญ

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    sticky jsfiddle
    css flex
    ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ปฌ๋ ‰์…˜
    react import export
    ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ slideup
    ํ˜•์ œ์ธ์ ‘์ž display none
    ํ˜•์ œ์ธ์ ‘์ž ์•ˆ๋˜๋Š” ์ด์œ 
    ์ ‘๊ทผ์„ฑ ์ฃผ์˜์‚ฌํ•ญ
    ๊ตฌ์กฐ๋ถ„ํ•ดํ• ๋‹น ์ข…๋ฅ˜
    javascript nodelist
    sass
    javascript htmlcollection
    javascript ์ปฌ๋ ‰์…˜
    ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํ‘œํ˜„์‹๋ฌธ
    vscode ๋‹จ์ถ•ํ‚ค
    ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํ‘œํ˜„์‹ ๋ฌธ
    ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๊ตฌ์กฐ๋ถ„ํ•ดํ• ๋‹น
    sticky codepen
    HTML Form
    CSS ์„ ํƒ์ž
    javascript htmlcollection nodelist
    ์›น์ ‘๊ทผ์„ฑ
    css ๊ฐ€์ƒ์„ ํƒ์ž
    ํ˜•์ œ์ธ์ ‘์ž
    html collection
    javascript ๊ตฌ์กฐ๋ถ„ํ•ดํ• ๋‹น
    ์•„์ฝ”๋””์–ธ๋ฉ”๋‰ด
    sticky ํ™œ์šฉ
    sass compiler
    css ํ˜•์ œ์ธ์ ‘์ž ์•ˆ๋ผ์š”
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
jmjm
์ฒซ ๋ฒˆ์งธ ์ปดํฌ๋„ŒํŠธ
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”