
특정 조건에 따라 다른 결과물을 렌더링 하는 것
// App.js
import React from 'react';
import Hello from './Hello';
import Wrapper from './Wrapper';
function App() {
return (
<Wrapper>
<Hello name="react" color="red" isSpecial={true}/>
<Hello color="pink" />
</Wrapper>
)
}
export default App;
// Hello.js
import React from 'react';
function Hello({ color, name, isSpecial }) {
return (
<div style={{ color }}>
{ isSpecial ? <b>*</b> : null }
안녕하세요 {name}
</div>
);
}
Hello.defaultProps = {
name: '이름없음'
}
export default Hello;
<b>*</b> 를, 그렇지 않다면 null 을 보여주도록 했다.참고로 JSX 에서 null, false, undefined 를 렌더링하게 된다면 아무것도 나타나 지 않는다.
// App.js
import React from 'react';
import Hello from './Hello';
import Wrapper from './Wrapper';
function App() {
return (
<Wrapper>
<Hello name="react" color="red" isSpecial />
<Hello color="pink"/>
</Wrapper>
);
}
export default App;
이렇게 isSpecial 이름만 넣어주면 isSpecial={true} 와 동일한 의미다.