๋ฉ์ธํ๋ก์ ํธ๊ฐ ๋๋๊ณ ๋๋ผ๋ ์
์ถ์ ์ด์ ์ ์์ํ ๋ฉ์ธ ํ๋ก์ ํธ๊ฐ 10์ 11์ผ์ ๊ฐ๋ฐ ๋ง๊ฐ์ ํ๊ณ 12์ผ์ ๋ฐ๋ชจ๋ฐ์ด๋ ํ๊ณ ... ์ ๋ง ์ด๋ ๊ฒ ๋ฐ์๊ณ intensiveํ๊ฒ ๋ฌ๋ ค์จ ์ ์ด ์์๋๊ฐ..?
์ฐ๋ฆฌ ํ์ด ์ง์ ์์ด๋์ด๋ ๊ตฌ์ํ๊ณ , ๊ธฐํ์ ํ๊ณ , ๋์์ธ๋ ํ๊ณ , ์ ๋ง ๋ด ์ถ์ด ๊ฐ๋ฐ ๊ฐ๋ฐ ์ฝ๋ฉ์ผ๋ก ๊ฐ๋!! ์ฐจ์๋ ๊ทธ๋ฐ ๋ชฐ์ ๊ฐ ๋์ ๊ฒฝํ์ ํ๋ค. ํ๋ก์ ํธ ๊ธฐ๊ฐ๋์ ๋ฐฅ๋ ์ ๋ ๋จน์ง ๋ชปํ๋ ๋ ๋ ๋ง์๊ณ , ๊ทธ๋ ๊ฒ ์ฐ์ฑ ์ ์ข์ํ๋ ๋ด๊ฐ ์ง์์ ํ๋ฐ์ง๋ ์ฐ์ฑ ์ ๋ชป๋๊ฐ์ ๋ ๋ง์ง๋ง.. ๊ฒฐ๊ณผ์ ์ผ๋ก ํ๋ก์ ํธ๋ฅผ ์ฑ๊ณต์ ์ผ๋ก ๋ง์น๊ฒ ๋์ด ์ ๋ง ๋ฟ๋ฏํ๊ณ ์์ง ํด์ผ๋ ๊ณต๋ถ๊ฐ ๋ ๋ง๊ธด ํ์ง๋ง ์ด๋์ ๋ ์กฐ๊ธ ๊ทธ๋๋ ์์ ๊ฐ๋ ์ด์ง ์๊ธด ๊ฒ ๊ฐ๋ค. ์์ฒญ๋ ์์ ๊ฐ์ ์๋์ง๋ง .. ์น๊ฐ๋ฐ์ ์ฒ์ ํด๋ณด๋๊ฑฐ๊ณ ์ธ์ ๊ฑฐ์ ์ฒซ ํ ํ๋ก์ ํธ์ด์ง๋ง ๋ ์ด๊ฒ๋ ๋ง๋ค ์ ์์ด! ๋ผ๋ ์ด์ง์ ์์ ๊ฐ..
ํ์คํ ์ฐ๋ฆฌ๊ฐ ์ง์ ๊ธฐํํ๊ณ ๋์์ธํ๋๋ก ๊ฐ๋ฐ์ ํ๋ค๋ณด๋ ํ๋ฆฌํ๋ก์ ํธ๋ ํ๋ ์คํ์ค๋ฒ ํ๋ก์ฐ ์ฝ๋ฉ๋ณด๋ค ํ๋ก๋ํธ์ ๋ํ ์ ์ ๋๊ฐ ๋น์ฐํ ๋ ์ปธ๊ณ ํ๋ํ๋ ์์๊ฐ๋ ์ฌ๋ฏธ๊ฐ ์์๋ค. ๊ทธ๋ฆฌ๊ณ ์ ๋ง ์ ๋ง ๊ฐ๋ฐ์ด ์ฌ๋ฏธ์์ด์ (์ฃผ๋ก ์๋ฒ ํต์ ํ๊ธฐ ์ด์ ์ ๊ทธ๋ฅ ๋ง ํผ์ ํ์ด์ง ๋ง๋ค๋ใ ใ ใ ํต์ ์ ๋ ์ด๋ ต๋ค..ใ ใ ) ๋์์ ์ธ๋กํ ๋์ด ๋ง๊ตฌ๋ง๊ตฌ ๋์ค๋ ๊ธฐ๋ถ์ด ๋ค๋๋ ๋ง์๋ค.
๋ฌผ๋ก ์ค๊ฐ์ ํ๋ ์๊ฐ๋ ๋ถ๋ช ๋ค๋๋ ์์์ง๋ง. ์๋ฅผ ๋ค๋ฉด ๋ ์ ์์ง๋์ฒ๋ผ ๋นจ๋ฆฌ ๊ตฌํ์ ๋ชปํ๊ณ ์ด๋ ๊ฒ ์๊ฐ์ด ๋ง์ด ๊ฑธ๋ฆด๊น..? ํ๋ก์ ํธ๊ฐ ๋๋๋ฉด ์คํ๋ ค ์์กด๊ฐ์ด ๋ฎ์์ง๋ค๋๋ฐ ์ ์ง ์๊ฒ ๋ค.. ์ด๊ฑธ ์ ๋ง ๋ด๊ฐ ๋ค ๋ค์ ๊ตฌํํ๋ผ๊ณ ํ๋ฉด ํ ์ ์์๊น?! ์์ง๋์ ๋ฐฑ์๋ ๋ถ๋ค๊ป ํ์ํ api๋ ์์ฒญํ์๊ณ ์ด๊ฒ์ ๊ฒ ์ ๋ง ๋ง์ด ์์๋ ๊ฒ ๊ฐ์๋ฐ ๋๋ ์ ๊ฒ ๋ฌด์จ๋ง์ธ์ง ์ ๋ง ๋ชจ๋ฅด๊ฒ ๋ค.. ๋ฑ๋ฑ..
๊ทธ์น๋ง ๋๋ฅผ ์ ๊น ๊ดด๋กญํ๋ ์ด๋ฐ ์๊ฐ๋ค์์ ๋ฒ์ด๋ ๊ธ์ ์ ์ธ ๋ฐฉํฅ์ผ๋ก ์๊ฐ์ ๋ง์ด ํ๋ ๊ฒ ๊ฐ๋ค. ๋๋ ์์ง๋๊ฐ์ด ๋ฌผ์ด๋ณผ ์ฌ๋์ด ์์ด ์ ๋ง ๋คํ์ด๋ค.! ๋ผ๋์ง .. ํ๋ก์ ํธ ๊ฒฝํ์์ ํ๋ฒ ๊ฒช์ด๋ณธ ๊ฒ๋ค์ด๋ ๋ด๊ฐ ๋ค์์ ํ๋ฉด ๋ ์งง์ ์๊ฐ์ ๋ ์ ๊ตฌํํ ์ ์๊ฒ ์ง ..!
ํ์คํ ๊ฑด ์ ๋ง ํ์๋ค ์ด์ด ์ข์๊ณ , ์ฐ๋ฆฌ ๋ฐฑ์๋ ํ๋ก ํธ์๋ ์๋ก ์ผ๊ตด ๋ถํ ์ ํ๋ฒ ์์ด ๋ค๋ค ๋งก์ ๋ฐ๋ฅผ ์ ๋ง ์ ํด์ฃผ์๊ณ ๋ค๋ค ๋๋ ์ค๋งํธํ์ ๊ฒ..
ํนํ ๋์ ํจ๊ป ์์ฒญ ๋ง์ ์๊ฐ์ ํจ๊ป ์ ์ฐ์ฒ๋ผ ๋ถํ์ด..ใ ใ ์์ง๋๊ฐ์ด ๋๋ ์ ๋ง๊ณ ์ข์ ๋ถ์ ๋ง๋์ ์ ๋ง ๊ฐ๋ฐํ๋ ๋ด๋ด ๋ง์ ํ์ด๋์๊ณ ์ข์๋ค.. ๐
ํ๊ณ
์ข์๋ ๋ถ๋ถ
- ํ๋ฆฌํ๋ก์ ํธ๋ ๊ทธ๋ผ ๋ ์ด์ ๋ญํด์ผ๋์ง?ํ๊ณ ๊ณ ๋ฏผํด์ผ๋๋ ์๊ฐ์ด ์๊ทผ ์์๋๋ฐ ๋ฉ๋ชจ์ฅ์๋ค๊ฐ ๊ทธ๋ ๊ทธ๋ ๋ด๊ฐ ํด์ผ๋ ์ผ์ ์ ์ด์ ๋ด๊ฐ ํด์ผ๋ ์ผ์ ๊น๋จน์ง ์๊ณ ์ธ์ธํ๊ฒ ์ ์ด์ ํด์ผ๋ ํ์คํธ๋ฅผ ๊ด๋ฆฌ ํ ์ ์์๋ค.
- ํ๋ฆฌํ๋ก์ ํธ ๋๋ณด๋ค ์ปดํฌ๋ํธ ์ฌ์ฌ์ฉ์ ๊ณ ๋ คํด์ ์ค๊ณํ๊ณ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ ์ปดํฌ๋ํธ๋ก ์๊ฒ ๋ง๋ ๊ฒ
- redux tookit์ ์กฐ๊ธ ๋ ์ต์ํด์ง๊ณ redux persist๋ ๋์ ํ์ฌ ์๋ก๊ณ ์นจ์ ์ํ๊ฐ ์ ์ง๋๊ฒ ํ ์
- ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฐ์ง ์๊ณ ๋ชจ๋ฌ์ฐฝ, ๋๋กญ๋ค์ด, ํญ์ ์ง์ ๊ตฌํํ ๊ฒ
- Styled components์ ์กฐ๊ธ ๋ ์ต์ํด์ ธ์ ๋งํฌ์ ๊ตฌ์กฐ๋ฅผ ์ง๊ณ css ์์ฑ๋ค๋ props๋ก ํ์ฉํ์ฌ ์ด๋ํ์ด์ง์์๋ css ์์ฑ๋ props๋ก ๋ฐ๋ก ๊ฐ์ ธ๋ค๊ฐ ๋ค๋ฅธ css๋ฅผ ์ ์ฉํ ์ ์์๋ ์ ..! (ํ๋ฆฌ๋ ์ด๊ฑธ ๋ชปํ๋ค๋..)
return (
<Button
disabled={disabled}
className={className}
width={width}
height={height}
backgroundColor={backgroundColor}
color={color}
hoverBackgroundColor={hoverBackgroundColor}
hoverColor={hoverColor}
onClick={onClick}
margin={margin}
>
{" "}
{children}{" "}
</Button>
);
};
const Button = styled.button`
display: flex;
justify-content: center;
align-items: center;
border-radius: 10px;
border: none;
width: ${(props) => props.width || " 300px"};
/* width: ${({ width }) => width || "300px"}; //props ์ด๋ ๊ฒ ๋ด๋ ค๋ ๋๊ฐ์ */
height: ${(props) => props.height || "35px"};
...
`
- ๋์์ธ์ด ๊น๋ํ๊ณ ์์๋ค๋ ํ๊ฐ๋ฅผ ๋ง์ด ๋ฐ์ ๊ฒ
- ๋ฐ์ํ์ผ๋ก ๋ชจ๋ฐ์ผ ๋ฒ์ ๊ณผ ๋ฐ์คํฌํ ๋ฒ์ ์ผ๋ก ๋ชจ๋ ์์ฑ
์์ฌ์ ๋ ๋ถ๋ถ
- ์๊ฐ ์ ๊ด๋ฆฌ์ ํ์ด์ง์์ ๋ ์ํผ๋ง ์ญ์ ๋ฅผ ๊ตฌํํ๊ณ ์ฌ์ฉ์๋ฅผ ์ญ์ ํ๋ ๊ธฐ๋ฅ์ ๊ตฌํํ์ง ๋ชปํ ์
- ๋ฐฐํฌํ๊ฒฝ์ ๋ ๋ค๋ฅผ ์ค ์ด์ผ..!! ํ๋ก์ ํธ ์์๋์๋ ๊ธ์์ผ์ ๋ฐฐํฌ์ผ๋ก ์ ํ์๋๋ฐ ๋ ๋ง์ ๊ธฐ๋ฅ ๊ตฌํํ๋๋ฐ ๊ธ๊ธํด์ ๋ฐฐํฌ๋ฅผ ์กฐ๊ธ ๋ง๋ฐ์ง์ ํ๋ ์
- ๋ก์ปฌํ๊ฒฝ์์๋ ์๋ก๊ณ ์นจ์ ํ ๋ refresh ์์ฒญ์ด ๋ ๋ฒ ๋์ด๋ ๊ธฐ๋ฅ์ ์ผ๋ก๋ ๋ฌธ์ ์์ด ๋ฐ์ดํฐ๋ฅผ ์ ๋ฐ์์์๋ค (์ฒซ์์ฒญ ์คํจ, ๋๋ฒ์งธ ์์ฒญ์์ ์ฑ๊ณตํ๋ ๊ฒ ๊ฐ๋ค). ์ค์ ๋ก vercel ๋ฐฐํฌํ๊ฒฝ์์๋ useEffect์ ๋ง์ดํธ๊ฐ ๋ฑ ํ๋ฒ๋ง ์ผ์ด๋๋ ๊ฒ์ธ์ง ์๋ก๊ณ ์นจ์ refresh ์์ฒญ์ด ํ ๋ฒ๋ง ๋๊ณ , ์์๋ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ค๋ ์์ฒญ์ด ๋จผ์ ์์ฒญ์ด ๋ณด๋ด์ ธ 401 unauthorized ์๋ฌ๊ฐ ๋๊ณ ์๋ฒ์์ ๋ฐ๋ ๋ฐ์ดํฐ๊ฐ ํ๋ฉด์ ์๋์์ง๋ ๋ฌธ์ ๊ฐ ์์๋ค.
- ๋ฐฐํฌ๋ฅผ ์กฐ๊ธ ๋ ์ผ์ฐ ํ์ผ๋ฉด ... ๋ฐฐํฌํ๊ฒฝ์์๋ ๊ฐ๋ฐ์ ๋ ๋ง์ด ํด๋ณผ ์ ์์์ ๊ฒ ๊ฐ์ ์ข์์ ๊ฒ ๊ฐ๋ค.
- ๋ฆฌ์กํธ์ ํด๋์ค ์ปดํฌ๋ํธ์์ ์ฌ์ฉํ๋ ์๋ช ์ฃผ๊ธฐ ๋ค๊ฐ์ง ๋ฉ์๋๊ฐ ์๋๋ฐ ๋ก๊ทธ์ธ์ ๊ตฌํํ ๋ ์ ๋ช ํ ๋ธ๋ก๊ฑฐ๊ฐ ์์ฑํ ํด๋์คํ ์ปดํฌ๋ํธ์ componentDidMount ๋ฉ์๋๊ฐ useEffect hook์์๋ ์ด๋ป๊ฒ ์จ์ผํ๋์ง?์ ๋ํ ๊ณต๋ถ๊ฐ ๋ถ์กฑํ๋ ์
๊ฐ์ ์ด ํ์ํ ๋ถ๋ถ
- ๊ฒ์ ๋ชจ๋ฌ์ฐฝ input์ ๊ฒ์์ด๋ฅผ ์ ๋ ฅํ๊ณ ์ง์ฐ๋ ๊ธฐ๋ฅ์ด ์์
- ์์ธ๋ก ์ฌ๋๋ค์ด ๊ฐ์ฅ ๊ถ๊ธํดํ๋๊ฒ ๊ฒ์ ๋ชจ๋ฌ์ฐฝ์์ ์ค์๊ฐ์ผ๋ก ๊ฒ์๋๋ ๊ธฐ๋ฅ์ด์๋๋ฐ, ์ด ๋ถ๋ถ์ ๋ฐ๋ชจ๋ฐ์ด๋ ๊ต์ก์์ง๋์ด๋์ ํผ๋๋ฐฑ์ ๋ฐ์ ๋ถ๋ถ์ด๊ธฐ๋ ํ๋ค.
- ๋ค๋ฅธ ์ ๋ช ํ ์น์ฌ์ดํธ์๊ฐ์ ์ด๋ป๊ฒ ๊ตฌํ์ด ๋์๋ ๋์ผ๋ก ๋ง์ด ๋ณด๊ณ ์ตํ๋ณด๋ผ๊ณ ํ์ จ๋ค. ํธ๋ํฝ์ด ๋ง์ ์ฌ์ดํธ์ธ ๊ฒฝ์ฐ ๊ฐ๋ฐ์๋ค์ด ๊ทธ๋งํผ ux์ ๋ํ ๊ณ ๋ฏผ์ ๋ง์ดํ ๊ฒฐ๊ณผ๋ฌผ์ผํ ๋ ์ ์ดํด๋ณด๊ณ ๋ด๊ฐ ์ฝ๋๋ก ์์ฑํ ๋๋ ํ๋ผ๊ณ ํ์ จ๋ค.
to be added ..!
'ํ๊ณ ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ๋ฐํธ์๋ ๊ฐ๋ฐ์๋ก 6๊ฐ์ ํ๊ณ (0) | 2023.09.30 |
---|---|
3๊ฐ์ ํ๊ณ (0) | 2023.06.30 |
๊ฐ๋ฐ์๋ก ์ฒซ ์ถ๊ทผ (0) | 2023.04.10 |
์ฝ๋์คํ ์ด์ธ ํ๋ก ํธ์๋ ๋ถํธ์บ ํ๋ฅผ ๋ง์น๋ฉฐ ๐ (0) | 2022.10.20 |
Pre-project | Stack Overflow ํด๋ก ๊ฐ๋ฐ ํ๊ณ (1) | 2022.09.10 |