개발의 시작과 끝
2021.02.09 / React - key 본문
생활코딩 15.3강 - key
state라고 하는 내부정보를 사용하고 자식에게 전달할 때는 props를 통해 전달한다.
리스트 항목을 쓸 때는 key를 사용한다.
이렇게 state와 props를 사용하면 데이터를 수정할 때 파일을 열지 않아도 바로 쓸 수 있다.
App.js
class App extends Component {
constructor(props) {
super(props);
this.state = {
subject:{title:'WEB', sub:'World wide web!'},
contents:[
{id:1, title:'HTML', desc:'HTML is for information'},
{id:2, title:'CSS', desc:'CSS is for design'},
{id:3, title:'JavaScript', desc:'JavaScript is for interactive'}
]
}
}
render() {
return (
<div className="App">
<Subject
title={this.state.subject.title}
sub={this.state.subject.sub}>
</Subject>
<Subject title="React" sub="For UI"></Subject>
<TOC data={this.state.contents}></TOC>
<Content title="HTML" desc="HTML is HyperText Markup Language."></Content>
</div>
);
}
}
TOC.js
import React, { Component } from 'react';
class TOC extends Component {
render() {
var lists = [];
var data = this.props.data;
var i = 0;
while(i < data.length) {
lists.push(<li key={data[i].id}><a href={"/content/"+data[i].id}>{data[i].title}</a></li>);
i += 1;
}
return (
<nav>
<ul>
{lists}
</ul>
</nav>
);
}
}
export default TOC;
참고
- www.youtube.com/watch?v=sAFNZuzFEPo&list=PLuHgQVnccGMCRv6f8H9K5Xwsdyg4sFSdi&index=18
'리액트' 카테고리의 다른 글
2021.02.09 / React - 이벤트 (0) | 2021.02.09 |
---|---|
2021.02.09 / React - render (0) | 2021.02.09 |
2021.02.09 / React - state (4) | 2021.02.09 |
2021.02.09 / React - props (0) | 2021.02.09 |
2021.02.08 / React - Component (2) | 2021.02.08 |