React 입문수업 (2022년 개정판)

props

강의소개

컴포넌트의 입력값인 props를 사용하는 방법을 소개합니다. 

 

 

 

강의

 

 

 

소스코드

변경점

import logo from './logo.svg';
import './App.css';
function Header(props){
  console.log('props', props, props.title);
  return <header>
    <h1><a href="/">{props.title}</a></h1>
  </header>
}
function Nav(props){
  const lis = []
  for(let i=0; i<props.topics.length; i++){
    let t = props.topics[i];
    lis.push(<li key={t.id}><a href={'/read/'+t.id}>{t.title}</a></li>)
  }
  return <nav>
    <ol>
      {lis}
    </ol>
  </nav>
}
function Article(props){
  return <article>
    <h2>{props.title}</h2>
    {props.body}
  </article>
}
function App() {
  const topics = [
    {id:1, title:'html', body:'html is ...'},
    {id:2, title:'css', body:'css is ...'},
    {id:3, title:'javascript', body:'javascript is ...'}
  ] 
  return (
    <div>
      <Header title="WEB"></Header>
      <Nav topics={topics}></Nav>
      <Article title="Welcome" body="Hello, WEB"></Article>
    </div>
  );
}

export default App;

 

 

 

 

라이브 데모

 

댓글

댓글 본문
  1. 22.04.13 완료
  2. 22.04.04 완료했습니다.
    잘 이해가 안돼서 2번 돌리고 코드 따라 치니까 이해가 되네요.
  3. 원채연
    감사합니다! 잘 배우고 갑니다.
    영상이나 소스코드에선 Nav 함수 리턴 값에 () 괄호 없이도 잘 구동되는 것 같은데
    저는 안 되더라고요. 그래서 라이브 데모 판 코드보고 차이를 발견해, 괄호를 넣어봤더니 잘 되네요.

    function Nav(props){
    const lis = []
    for(let i=0; i<props.topics.length; i++){
    let t = props.topics[i];
    lis.push(<li key={t.id}><a href={'/read/'+t.id}>{t.title}</a></li>)
    }
    return(
    <nav>
    <ol>{lis}</ol>
    </nav>
    );
    }
버전 관리
egoing
현재 버전
선택 버전
graphittie 자세히 보기