profile
Web Frontend Developer #TypeScript #React #NextJS๐Ÿคธโ€โ™€๏ธ

git stash ์‚ฌ์šฉํ•˜๊ธฐ

์„ ์‚ฌ์šฉํ•˜๋ฉด ์ถ”์ ๋ถˆ๊ฐ€๋Šฅํ•œ(์ƒˆ๋กœ ์ƒ์„ฑ๋œ ํŒŒ์ผ)๋„ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋‹ค ๋„ ๊ฐ€๋Šฅ << ํ•œ๋ฒˆ ๋” ํ™•์ธ

2023๋…„ 3์›” 22์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[NextJS] Error: Invalid src prop

next.config.js ํŒŒ์ผ์— ๋„๋ฉ”์ธ ๋งํฌ๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด ํ•ด๊ฒฐ๋œ๋‹ค.๐Ÿ’ก์„ค์ •์„ ๋ณ€๊ฒฝํ•ด์ค€ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ์„œ๋ฒ„๋ฅผ ๊ป๋‹ค ์ผœ์ฃผ์–ด์•ผ ์ ์šฉ์ด ๋œ๋‹ค!!!

2023๋…„ 3์›” 12์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

npm install ์˜ต์…˜

npm ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €๋ฅผ ์ด์šฉํ•ด์„œ ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ• ๋•Œ ์“ฐ์ด๋Š” ์˜ต์…˜ ์ •๋ฆฌdevDependencies์— ํŒจํ‚ค์ง€๋“ค์ด ์ถ”๊ฐ€ํ•˜๋Š” ์˜ต์…˜dependencies์— ํŒจํ‚ค์ง€๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ์˜ต์…˜npm5 ๋ถ€ํ„ฐ๋Š” --save ์˜ต์…˜์„ ์ถ”๊ฐ€ํ•˜์ง€ ์•Š์•„๋„ ์ž๋™์œผ๋กœ dependencies์— ์ถ”๊ฐ€ํ•ด๋‹น ํŒจํ‚ค์ง€๋ฅผ

2023๋…„ 3์›” 9์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

NextJS + Prettier ์‹œ์ž‘ํ•˜๊ธฐ

์ฝ”๋“œ ์Šคํƒ€์ผ์„ ์ผ๊ด€์„ฑ์žˆ๊ฒŒ ๊ด€๋ฆฌํ•ด์ฃผ๋Š” ์ฝ”๋“œ ํฌ๋ฉงํ„ฐ๋กœ ํ˜‘์—…์— ํ•„์ˆ˜์•„์ดํ…œprettier ๋ฅผ ์„ค์น˜ํ•œ๋‹คprettier ์„ค์ •ํ•˜๊ธฐ.prettierrc.js ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๊ณ  ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ์ž…๋ ฅํ•œ๋‹ค.prettier ๊ฒ€์‚ฌํ•˜๊ธฐprettier ์ ์šฉํ•˜๊ธฐ

2023๋…„ 3์›” 4์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

NextJS + Storybook ์‹œ์ž‘ํ•˜๊ธฐ

storybook์€ UI ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋ถ„๋ฆฌํ•ด์„œ ๊ฐœ๋ฐœํ•˜์—ฌ ํ…Œ์ŠคํŠธํ•˜๊ณ  ๋ฌธ์„œํ™”ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐœ๋ฐœ ๋„๊ตฌ์ธ๋ฐ ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž, ๋””์ž์ด๋„ˆ์™€ ํ˜‘์—…ํ•˜๊ณ  ์œ ์ง€๋ณด์ˆ˜๋ฅผ ์ง„ํ–‰ํ•˜๋Š” ๊ฒƒ์„ ํŽธ๋ฆฌํ•˜๊ฒŒ ํ•œ๋‹ค. ์ปดํฌ๋„ŒํŠธ์˜ ์ƒํƒœ ๋ณ€ํ™” ๋ฐ ์ด๋ฒคํŠธ ๋“ฑ์„ ์‹œ๊ฐ์ ์œผ๋กœ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด ๊ฐœ๋ฐœ์ž์˜ ์ž‘์—… ํšจ์œจ์„ฑ์„ ๋†’์—ฌ์ฃผ๋Š”

2023๋…„ 3์›” 4์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

tailwindCSS ์‹œ์ž‘ํ•˜๊ธฐ

tailwind ์„ค์น˜tailwind ์„ค์ • ํŒŒ์ผ ์ƒ์„ฑํ…œํ”Œ๋ฆฟ ๊ฒฝ๋กœ ๊ตฌ์„ฑ(tailwind.config.js)tailwind ์ ์šฉ(global.css)์•ฑ ์‹คํ–‰์˜ˆ์‹œ๐Ÿ’ก tailwindCSS ๋ฅผ ์„ค์น˜ํ•˜๊ณ  className ์„ ์ž‘์„ฑํ•ด๋„ ์ ์šฉ์ด ์•ˆ๋˜์„œ ๋ญ๊ฐ€ ๋ฌธ์  ์ง€ ํ•œ์ฐธ ์ฐพ์•˜๋Š”๋ฐ VS

2023๋…„ 3์›” 4์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

๊ฐœ์ธ์ •๋ณด ๋งˆ์Šคํ‚น ์ฒ˜๋ฆฌ

์ •๊ทœ์‹์„ ์ด์šฉํ•ด์„œ ๊ฐœ์ธ์ •๋ณด ๋งˆ์Šคํ‚น ์ฒ˜๋ฆฌํ•˜๊ธฐ

2023๋…„ 1์›” 30์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

์žผ์Šคํƒ(JAMSTACK)

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ, API, ๋งˆํฌ์—…์„ ์ฃผ์ถ•์œผ๋กœ ํ•˜๋Š” ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์•„ํ‚คํ…์ฒ˜ํ‘œ์ค€ ๋งˆํฌ์—… ์–ธ์–ด๋กœ ๊ตฌ์„ฑํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„ ๋˜๋Š” nodeJS์™€ ๊ฐ™์€ ์„œ๋ฒ„ ์‚ฌ์ด๋“œ ๊ธฐ์ˆ ์— ์˜์กดํ•˜์ง€ ์•Š๊ณ  ์–ด๋””์„œ๋‚˜ ๋นŒ๋“œํ•˜๊ณ  ํ…Œ์ŠคํŠธ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค์ตœ๊ทผ๊นŒ์ง€ ๊ฐ€์žฅ ์›น ๊ฐœ๋ฐœ์ž๋“ค์ด ๋งŽ์ด ์„ ํƒํ•œ ๊ฐœ๋ฐœ ๋ฐฉ์‹์€ LAM

2023๋…„ 1์›” 12์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[JS]๊ฐ๋„๊ธฐ

๊ฐ์—์„œ 0๋„ ์ดˆ๊ณผ 90๋„ ๋ฏธ๋งŒ์€ ์˜ˆ๊ฐ, 90๋„๋Š” ์ง๊ฐ, 90๋„ ์ดˆ๊ณผ 180๋„ ๋ฏธ๋งŒ์€ ๋‘”๊ฐ 180๋„๋Š” ํ‰๊ฐ์œผ๋กœ ๋ถ„๋ฅ˜ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ angle์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ ์˜ˆ๊ฐ์ผ ๋•Œ 1, ์ง๊ฐ์ผ ๋•Œ 2, ๋‘”๊ฐ์ผ ๋•Œ 3, ํ‰๊ฐ์ผ ๋•Œ 4๋ฅผ returnํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑ

2023๋…„ 1์›” 11์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

[JS]์ฝœ๋ผ ๋ฌธ์ œ

์˜ค๋ž˜์ „ ์œ ํ–‰ํ–ˆ๋˜ ์ฝœ๋ผ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฝœ๋ผ ๋ฌธ์ œ์˜ ์ง€๋ฌธ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.์ •๋‹ต์€ ์•„๋ฌด์—๊ฒŒ๋„ ๋งํ•˜์ง€ ๋งˆ์„ธ์š”.์ฝœ๋ผ ๋นˆ ๋ณ‘ 2๊ฐœ๋ฅผ ๊ฐ€์ ธ๋‹ค์ฃผ๋ฉด ์ฝœ๋ผ 1๋ณ‘์„ ์ฃผ๋Š” ๋งˆํŠธ๊ฐ€ ์žˆ๋‹ค. ๋นˆ ๋ณ‘ 20๊ฐœ๋ฅผ ๊ฐ€์ ธ๋‹ค์ฃผ๋ฉด ๋ช‡ ๋ณ‘์„ ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š”๊ฐ€?๋‹จ, ๋ณด์œ  ์ค‘์ธ ๋นˆ ๋ณ‘์ด 2๊ฐœ ๋ฏธ๋งŒ์ด๋ฉด, ์ฝœ๋ผ๋ฅผ

2023๋…„ 1์›” 11์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

console.log ์™€ console.dir ์˜ ์ฐจ์ด

console.log() : HTML ํ˜•ํƒœ์˜ ํŠธ๋ฆฌ๊ตฌ์กฐ๋ฅผ ์ถœ๋ ฅconsole.dir() : JSON ํ˜•ํƒœ์˜ ํŠธ๋ฆฌ๊ตฌ์กฐ๋ฅผ ์ถœ๋ ฅ

2023๋…„ 1์›” 10์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

์‚ฌ์šฉ๋œ ํ•จ์ˆ˜๊ฐ€ ์–ด๋А ํŒŒ์ผ์—์„œ ๋กœ๋“œํ•˜๋Š”์ง€ ๋กœ์ปฌ ๋ธŒ๋ผ์šฐ์ €์—์„œ ํ™•์ธํ•˜๊ธฐ

ํ•จ์ˆ˜๊ฐ€ ์‚ฌ์šฉ๋œ ํŽ˜์ด์ง€๋ฅผ ์—ด๊ณ  ์ฝ˜์†”์—์„œ ํ•ด๋‹น ํ•จ์ˆ˜๋ช…์„ ์นœ๋‹ค๊ฒฐ๊ณผ๋ฅผ ๋”๋ธ” ํด๋ฆญํ•œ๋‹คํ•จ์ˆ˜๊ฐ€ ์ƒ์„ฑ๋˜์–ด ์žˆ๋Š” ํŒŒ์ผ์ด Sources ์ฐฝ์— ์—ด๋ฆฐ๋‹คํ™•์ธํ•œ๋‹คโญ์—๋Ÿฌ๋Š” ๋นจ๊ฐ„ ๋ฐ‘์ค„์ด ํ‘œ์‹œ๋˜๋ฏ€๋กœ ์–ด๋””์„œ ์—๋Ÿฌ๊ฐ€ ๋‚œ ๊ฑด์ง€๋„ ํ™•์ธ ๊ฐ€๋Šฅ

2023๋…„ 1์›” 9์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

ํ„ฐ๋ฏธ๋„๋งˆ๋‹ค node ๋ฒ„์ „์ด ๋‹ค๋ฅด๊ฒŒ ํ‘œ์‹œ๋˜๋Š” ์ด์œ 

gatsby ๋ฅผ ์ด์šฉํ•ด์„œ ๋ธ”๋กœ๊ทธ๋ฅผ ๋งŒ๋“ค์–ด๋ณด๊ธฐ ์œ„ํ•ด ์„ค์น˜ํ•˜๋Š” ๋„์ค‘ ๊ธฐ์กด์— ์„ค์น˜๋œ node ๋ฒ„์ „์ด ๋‚ฎ์•„์„œ gatsby ๊ฐ€ ์„ค์น˜๋˜์ง€์•Š๋Š” ์ด์Šˆ๊ฐ€ ๋ฐœ์ƒํ–ˆ๊ณ , nvm์„ ์ด์šฉํ•ด์„œ ์ตœ์‹  ๋…ธ๋“œ๋ฅผ ์„ค์น˜ํ•˜๊ณ  nvm use๋ฅผ ์ด์šฉํ•ด์„œ ๋…ธ๋“œ๋ฒ„์ „์„ ์„ค์ •ํ•ด ์ฃผ์—ˆ๋‹ค.๊ทผ๋ฐ vsc ์™€ iterm2 ํ„ฐ

2022๋…„ 12์›” 29์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

React.Fragment ์‚ฌ์šฉ์ด์œ 

๋ฆฌ์•กํŠธ์—์„œ๋Š” ํ•˜๋‚˜์˜ ์ปดํฌ๋„ŒํŠธ์—์„œ ์—ฌ๋Ÿฌ๊ฐœ์˜ ์•จ๋ฆฌ๋จผํŠธ๊ฐ€ ๋ฐ˜ํ™˜๋˜๋Š”๋ฐ ์ด๋•Œ return๋ฌธ ์•ˆ์—๋Š” ์•จ๋ฆฌ๋จผํŠธ๋“ค์„ ๋ฌถ์–ด์ฃผ๋Š” ์ตœ์ƒ์œ„ ํƒœ๊ทธ๊ฐ€ ์žˆ์–ด์•ผํ•œ๋‹ค.๋‹ค์Œ ์ฝ”๋“œ์—์„œ Table ์ปดํฌ๋„ŒํŠธ๊ฐ€ ์ถœ๋ ฅ๋˜๋ฉด์ด๋Ÿฌํ•œ ํ˜•ํƒœ๋ฅผ ๊ฐ€์ง€๊ฒŒ ๋œ๋‹ค.์ด๋•Œ ๋ถˆํ•„์š”ํ•œ div ํƒœ๊ทธ ์‚ฌ์šฉ์„ ๋ง‰๊ธฐ ์œ„ํ•ด React.Frag

2022๋…„ 12์›” 28์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

GatsbyJS

React ๊ธฐ๋ฐ˜์˜ ์ •์  HTML ํŽ˜์ด์ง€ ์ƒ์„ฑ๊ธฐ๋กœ ๊ธฐ์กด์— ๋ธ”๋กœ๊ทธ ์ œ์ž‘์— ๋งŽ์ด ์‚ฌ์šฉ๋˜์—ˆ๋˜ Jekyll์™€ ๋น„์Šทํ•˜๋‹ค๊ธฐ๋ณธ์ ์ธ default ์ƒ์„ฑ ๋ฐฉ๋ฒ•๊ณผ starter pack ์„ ์‚ฌ์šฉํ•˜๋Š” ๋‘๊ฐ€์ง€ ๋ฐฉ๋ฒ•์ด ์žˆ๋Š”๋ฐ, ํฌํŠธํด๋ฆฌ์˜ค ๋˜๋Š” ๋ธ”๋กœ๊ทธ๋ฅผ ๋น ๋ฅด๊ฒŒ ๊ตฌ์ถ•ํ•˜๊ณ  ์‹ถ์„ ๊ฒฝ์šฐ starter

2022๋…„ 12์›” 26์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

์ •๊ทœํ‘œํ˜„์‹(regex)

๋ฌธ์ž์—ด์—์„œ ํŠน์ • ๋ฌธ์ž ์กฐํ•ฉ์„ ์ฐพ๊ธฐ ์œ„ํ•œ ํŒจํ„ด^ : ๋ฌธ์ž์—ด์˜ ์ฒ˜์Œ์„ ์ง€์ •$ : ๋ฌธ์ž์—ด์˜ ๋์„ ์ง€์ •. : ์ค„ ๋ฐ”๊ฟˆ ๋ฌธ์ž(\\n)๋ฅผ ์ œ์™ธํ•œ ์ž„์˜์˜ ํ•œ ๋ฌธ์ž๋ฅผ ์˜๋ฏธ? : ํ•ด๋‹น ๋ฌธ์ž ํŒจํ„ด์ด 0๋ฒˆ ๋˜๋Š” 1๋ฒˆ๋งŒ ๋ฐ˜๋ณต\* : ํ•ด๋‹น ๋ฌธ์ž ํŒจํ„ด์ด 0๋ฒˆ ์ด์ƒ ๋ฐ˜๋ณต\+ : ํ•ด๋‹น ๋ฌธ์ž ํŒจํ„ด์ด

2022๋…„ 9์›” 29์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

mobX ์‚ฌ์šฉํ•˜๊ธฐ

src/stores/BasketStore.tssrc/stores/ProductStore.tssrc/components/Market.tsx

2022๋…„ 9์›” 22์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

github ๋ ˆํฌ์ง€ํ† ๋ฆฌ ์—ฐ๊ฒฐํ•˜๊ธฐ

์‚ฌ์ด๋“œ ํ”„๋กœ์ ํŠธ ์ƒˆ๋กœ ํ• ๋•Œ๋งˆ๋‹ค ํ—ท๊ฐˆ๋ ค์„œ ๊ธฐ๋ก ๊นƒํ—ˆ๋ธŒ์— ์ƒˆ๋กœ์šด ๋ ˆํฌ์ง€ํ† ๋ฆฌ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. ๊นƒํ—ˆ๋ธŒ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์™€ ์—ฐ๊ฒฐํ•œ ๋กœ์ปฌ ํด๋”์—์„œ init์„ ์ง„ํ–‰ํ•œ๋‹ค.(๋กœ์ปฌ ์ €์žฅ์†Œ ์ƒ์„ฑ) > git init ๋กœ์ปฌ ํด๋”์™€ ๊นƒํ—ˆ๋ธŒ ๋ ˆํฌ์ง€ํ† ๋ฆฌ๋ฅผ ์—ฐ๊ฒฐํ•œ๋‹ค. > git remot add ori

2022๋…„ 9์›” 18์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

๊ธฐ๋ณธ ๋ธŒ๋žœ์น˜๋ช… master ๋ฅผ main ๋กœ ๋ณ€๊ฒฝ

git init์„ ํ–ˆ์„ ๋•Œ ๊ธฐ๋ณธ ์„ค์ •์„ ๋ฏธ๋ฆฌ ๋ฐ”๊พธ์ง€ ์•Š์œผ๋ฉด master๋กœ ์„ค์ •๋˜๋Š”๋ฐ์›๊ฒฉ ์ €์žฅ์†Œ์—๋Š” main์œผ๋กœ ๋งŒ๋“ค์–ด์ ธ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— push ํ• ๋•Œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค.ํ„ฐ๋ฏธ๋„์— ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ์ž…๋ ฅํ•ด์„œ ๊ธฐ๋ณธ ๋ธŒ๋žœ์น˜๋ช…์„ ์ˆ˜์ •ํ•ด์ค€๋‹ค.

2022๋…„ 9์›” 15์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท
post-thumbnail

! [rejected] main -> main (non-fast-forward)

git push origin main ํ–ˆ์„ ๋•Œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค.์•„๋งˆ๋„ push ํ•˜๊ธฐ์ „ pull์„ ๋•ก๊ฒจ๋ฒ„๋ ค์„œ ๊ทธ๋Ÿฐ๋“ฏ,, ์™œ๊ทธ๋žฌ๋Š”์ง€๋Š”,, ๋ชฐ๋ผ,,push ํ• ๋ ค๊ณ ํ•˜๋Š” ๋ธŒ๋žœ์น˜๋ช… ์•ž์— +๋ฅผ ๋ถ™์—ฌ์ค€๋‹ค.

2022๋…„ 9์›” 15์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท