๐ค TIL(Today I Learned)
TIL(20210708) - JSX๊ท์น
Seungjae Lee
2021. 7. 8. 22:47
๐ Daily
- JSX๋ฌธ๋ฒ ํ์ต ๋ฐ ํ์ฉ, map์ ์ด์ฉํ ๋ฐ๋ณต ํ์ฉ, React ํ์ต
- ๊ฐ๋จํ React ์ฑ ๋ง๋ค๊ธฐ(JSX ๋ฌธ๋ฒ์ ์ฌ์ฉ)
๐ค Learned
JSX ๊ท์น
- ํ๋์ ์๋ฆฌ๋จผํธ ์์ ๋ชจ๋ ์๋ฆฌ๋จผํธ๋ฅผ ํฌํจํ๋ค.
- ์๋ฆฌ๋จผํธ ํด๋์ค ์ฌ์ฉ ์, className ์ผ๋ก ํ๊ธฐํ๋ค.
- JavaScript ํํ์ ์ฌ์ฉ ์, ์ค๊ดํธ({}) ์ด์ฉ
- ์ฌ์ฉ์ ์ ์ ์ปดํฌ๋ํธ๋ ๋๋ฌธ์๋ก ์์
- ์กฐ๊ฑด๋ถ ๋ ๋๋ง์๋ ์ผํญ์ฐ์ฐ์ ์ฌ์ฉ
- ์ฌ๋ฌ ๊ฐ์ HTML ์๋ฆฌ๋จผํธ๋ฅผ ํ์ํ ๋, map() ํจ์๋ฅผ ์ด์ฉ
React ์์ map()์ ์ฌ์ฉํด์ ์๋ฆฌ๋จผํธ๋ฅผ ํ์ํ๋ ๋ถ๋ถ์ ์ ๋ง ์ค์ํ๋ค!
const Tweets = () => {
return (
<ul className="tweets">
{dummyTweets.map((tweet) => {
const isParkHacker = tweet.username === 'parkhacker';
const tweetUserNameClass = isParkHacker
? 'tweet__username tweet__username--purple'
: 'tweet__username';
return (
<li className="tweet" key={tweet.id}>
<div className="tweet__profile">
<img src={tweet.picture} />
</div>
<div className="tweet__content">
<div className="tweet__userInfo">
<span className={tweetUserNameClass}>{tweet.username}</span>
<span className="tweet__createdAt">{tweet.createdAt}</span>
</div>
<div className="tweet__message">{tweet.content}</div>
</div>
</li>
);
})}
</ul>
);
};
๐ง
๋ฐฐ์ด ๊ฒ๋ค์ด ์ ์ ๋์ด๊ฐ์๋ก ์ ๋ฆฌํ๊ธฐ๊ฐ ํ๋ค์ด์ง๋ค
์ฌ๋งํ๋ฉด ํ๋ฃจ ์์ ๋๋ด๊ณ ์ถ์๋ฐ ์กฐ๊ธ์ฉ ๋ฐ๋ฆฌ๋ ๊ฒ ์๋ค ๋ณด๋
์์ด ์ ์ ๋ฐฉ๋ํด์ง๋ค... ํผ๊ณคํด๋ ํ๊ณ ์์.
๐ Tomorrow
- React ํ์ต
- ์๊ณ ๋ฆฌ์ฆ ํ๊ธฐ