๐ TIL(98)
-
210908 ๊ฐ๋ฐ๊ธฐ๋ก: JSON ์ ์ค๋ฐ๊ฟ ๋ฌธ์
๐ ์ํฉ JSON ๊ฐ์ฒด๋ก ๋ฐ์ ๋ฌธ์ฅ ๋ด์ฉ์ ๊ฐํ(์ค๋ฐ๊ฟ)ํ์ฌ html(jsx)์ ์ถ๋ ฅํด์ผํ๋ค. ๐ ๋ฌธ์ \n ์ด๋ \\n , ์ฌ์ง์ด ํ๊ทธ๊น์ง JSON ๋ฌธ์ฅ์ ๋ฃ์ด๋ดค์ง๋ง, ์ค ๋ฐ๊ฟ ์ฒ๋ฆฌ ์์ด ๋ชจ๋ ํ ์ค๋ก ์ถ๋ ฅ๋๋ค. โ ํด๊ฒฐ ํ๊ทธ๋ผ๋ ๊ฒ์ด ์๋ค. preformatted tag ๋ผ๋ ๋ป์ผ๋ก ํ๊ทธ๋ ๋ค๋ฅธ ์ฒ๋ฆฌ ์์ ์์ด ์ํ๋ ํฌ๋งท์ผ๋ก html ์ ์ถ๋ ฅํ๋ค. currentQuestion['title'] ์ JSON ๊ฐ์ฒด์์ title ์ด๋ key ๋ก ๋ฌธ์ฅ์ ๋ฐ์์จ ๊ฐ์ด๋ค. ํด๋น ๊ฐ์ pre ํ๊ทธ ๋ด๋ถ์ ๋ฃ์ด์ฃผ๋ฉด \n ์ด ์ ๋๋ก ๋จนํ๋ ๊ฒ์ ํ์ธํ ์ ์๋ค. ... return ( {currentQuestion['title']} ) ์ด๋ ๊ฒ ๊ฐํ์ด ๋๋ค. ๊ทธ๋ฐ๋ฐ ๋ญ๊ฐ ์ ๋ ฌ์ด ์์์ง์์ ๋ค๋ฅธ ๋ฐฉ๋ฒ๋ ์ฐพ์๋ด์ผํ ๊ฒ ..
2021.09.09 -
210907 ๊ฐ๋ฐ๊ธฐ๋ก: webpack ํ๋ฌ๊ทธ์ธ ๊ณต๋ถ์ค
ํ์ฌ ํ๋ก์ ํธ ๊ฐ๋ฐํ๊ฒฝ ์ธํ ํ๋ผ๋ ๋ง์ ํธ๋ค๋ฅ ์ธํ๋ฐ์์ ์นํฉ ๊ฐ์๋ฅผ ๊ตฌ๋งคํ๋ค. ๊ทธ์ ๊น์ง๋ ๊ฐ๋ฐํ๊ฒฝ, webpack ๊ฐ์ ๋ง์ด ๋ฏ์ค๊ณ ๋๋์ ๊ฑฐ๋ฆฌ๊ฐ ๋จผ ๊ฐ๋ ์ด๋ผ ์๊ฐํ๋๋ฐ, ๊ณต๋ถํ๋ฉด ํ ์๋ก ๋ ๋ฐฐ์์ผ ํ๋ค๊ณ ๋๊ผ๋ค. ๋ก๋์ ํ๋ฌ๊ทธ์ธ์ ์ฐจ์ด ๋ก๋๊ฐ ํ์ผ ๋จ์๋ก ์ฒ๋ฆฌํ๋ ๋ฐ๋ฉด, ํ๋ฌ๊ทธ์ธ์ ๋ฒ๋ค๋ ํ๋์ ๊ฒฐ๊ณผ๋ฌผ์ ๋์์ผ๋ก ์ฒ๋ฆฌํ๋ค. ์์ ์์ ์์ฑ๋ ๊ฒฐ๊ณผ๋ฌผ์ด main.js ํ๋์ด๊ธฐ ๋๋ฌธ์ ํ๋ฌ๊ทธ์ธ์ด ํ ๋ฒ๋ง ๋์ํ ๊ฒ์ด๋ผ ์ถ์ธกํ ์ ์๋ค. ์์ฃผ ์ฌ์ฉํ๋ ํ๋ฌ๊ทธ์ธ bannerPlugin main.js ์ ์ต์๋จ์ ์ถ๋ ฅ๋ ๋ด์ฉ์ ์์ฑํ ์ ์๋ค(like banner) const childProcess = require('child_process'); // git ๋ช ๋ น์ด๋ฅผ ๋ฃ์ ์ ์๋ค. plugin..
2021.09.08 -
210906 ๊ฐ๋ฐ๊ธฐ๋ก: ํ๋ก์์ ๋?
๐ฌ ํ๋ก์์ ํ๋ก์์ ํจ์ ์ฟผ๋ฆฌ๋ฌธ์ ์งํฉ์ผ๋ก ํน์ ์์ ์ ์ผ๊ด ์ฒ๋ฆฌ ํน์ ๋ก์ง, ์ฆ ์ฐ์ฐ์ ์ํ ๋ฆฌํด ๊ฐ์ด ์กด์ฌํ ์ ๋, ์กด์ฌํ์ง ์์ ์๋ ์๋ค. ๋ฆฌํด ๊ฐ์ ๋ฐ๋์ ๊ฐ์ง๋ค. ์ฌ๋ฌ๊ฐ์ ๋ฆฌํด ๊ฐ ๋ฆฌํด ๊ฐ์ ๋จ ํ๋ ์ฟผ๋ฆฌ๋ฌธ์ ์งํฉ์ด๊ธฐ์ DB ๋จ์์ ๊ธฐ์ ํ๋ฉด ๋จ์์ ๊ธฐ์ ๋จ๋ ๋ฌธ์ฅ ๊ตฌ์ฑ ๊ฐ๋ฅ ๋จ๋ ๋ฌธ์ฅ ๊ตฌ์ฑ ๋ถ๊ฐ๋ฅ ๊ฐํน ํ๋ก์์ ๋ ๋ฆฌํด๊ฐ์ด ์๊ณ , ํจ์๋ ๋ฆฌํด๊ฐ์ ๊ฐ์ง๋ค ๋ผ๋ ๋ง๋ก ๋์ ๊ตฌ๋ถ ์ง๋๋ฐ ์ด๋ ์๋ชป๋ ์ ์๋ค. ํ๋ก์์ ๋ ๋งค๋ฒ ์ฌ์ฉํด์ผํ๋ ์ฟผ๋ฆฌ๊ฐ ์๋ค๋ฉด ์ด๋ฅผ ์คํ ์ด๋ ํ๋ก์์ ๋ก ๋ชจ๋ํํ์ฌ ํ์ํ ๋ ์ฌ์ฉํ๋ค. ์คํ ์ด๋ ํ๋ก์์ ์ ํน์ง 1. DB ์ฑ๋ฅ ํฅ์ 2. ์ ์ง๊ด๋ฆฌ ์ฉ์ด 3. ๋ชจ๋์ ํ๋ก๊ทธ๋๋ฐ ๊ฐ๋ฅ 4. ๋ณด์ ๊ฐํ : ์ฌ์ฉ์์๊ฒ ์ ๊ทผ๊ถํ์ ์ฃผ๋ ๋์ , ํ๋ก์์ ์๋ง ์ ๊ทผ๊ถํ์ ๋ถ์ฌํ์ฌ ํ ์ด๋ธ ์ ๋ณด..
2021.09.07 -
npm ์๋์ฐ - ๋งฅ ํธํ ๋ฐฉ๋ฒ (npm install cross-env)
๐ป ์ํฉ ๋งฅos ์์ node.js ๊ธฐ๋ฐ ํ๋ก์ ํธ ์งํ ์ค, ํ์ ์๋์ฐ os ๋ฅผ ์ฐ๋ ๋ถ๋ค์ด ํฉ๋ฅํ๋ค. ํ๋ก์ ํธ ํ์ผ์ npm build ํ๋ ๊ณผ์ ์์ ์๋์ฐos ๋ฅผ ์ฌ์ฉํ๋ ๋ถ๋ค๋ง ๋น๋๊ฐ ์งํ๋์ง ์์๋ค. npm ๋ฌธ์์ ์ํ๋ฉด ํ๊ฒฝ๋ณ์๋ฅผ NODE_ENV=production(or development) ์ฒ๋ผ ์ค์ ํ ๋ ๋ฐ์ํ ์ ์๋ ๋ฌธ์ ๋ผ๊ณ ํ๋ค. ๐ ํด๊ฒฐ cross-env ๋ชจ๋์ ์ฌ์ฉํ์ฌ ์์ชฝ os ๋ฅผ ํธํ์ํจ๋ค. ์ฐ์ ๋ชจ๋์ ์ค์นํ๊ณ , package.json ์ ๋น๋ ์คํฌ๋ฆฝํธ๋ฅผ ํ์ธํ๋ค. cross-env ๋ชจ๋ ๋งํฌ 1) cross-env ๋ชจ๋ ์ค์น npm install --save-dev cross-env 2) package.json ์คํฌ๋ฆฝํธ์ cross-env ์ถ๊ฐ ๊ณต์๋ฌธ์๋ ์๋์ ๊ฐ์ด cr..
2021.09.06 -
210905 ๊ฐ๋ฐ๊ธฐ๋ก: ํ๋ก๊ทธ๋๋จธ์ค ๋ฑ๊ตฃ๊ธธ ํ์ด์ฌ
๋์ ํ๋ก๊ทธ๋๋ฐ ๋ฌธ์ ์ธ๋ฐ, ๋น์ฅ DP ๊ฐ ๋ญ๋๊ณ ๋ฌผ์ผ๋ฉด ๋ญ๋ผ ๋๋ตํ ์์ ์ด ์๋ค. ๊ทธ๋งํผ DP ๋ฌธ์ ์ ๋ฌด์งํ๊ธฐ ๋๋ฌธ์ ์ ๋๋ก ์ ๊ทผ๋ ๋ชปํ๋ค. ์์ฆ ํ๋ก๊ทธ๋๋จธ์ค level 3 ๋ฌธ์ ๋ฅผ ํ๊ณ ์๋๋ฐ, ์์งํ ๋ด ์ค๋ ฅ์ผ๋ก ํธ๋๊ฒ ๊ฑฐ์ ์๋ค. ๋๋ถ๋ถ ๊ตฌ๊ธ๋ง์ผ๋ก ํํธ๋ฅผ ์ป์ด ์์์์ ํ๋ค. ํผ์ ์๊ฐํ๋ ํ์ ๊ธธ๋ฌ์ผํ๋๋ฐ ๋ง ์ฒ๋ผ ์ฝ์ง ์๋ค. ๊ทธ๋๋ ๊ณ์ํด๋ณด์. ๋ฑ๊ตฃ๊ธธ ๋ฌธ์ ํ๋ฉด์ ๋๋ฌด ๋ฐ๋ก๋ฅผ ๋ชป ์ฐพ์ ๋ค๋ฅธ ๋ถ๋ค์ ํ์ด๋ฅผ ๋ดค๋ค. ์ ์ฌ์ง์ ๋ถ์ ์ง์ ๋ฐ๋ก๋ฅผ ๋ง๋ค์ด ํ ์คํธ๋ฅผ ํด๋ณด์ จ๋๋ฐ, ์ ๋ฐ ์ ์ฑ์ ์์์ผ ์ค๋ ฅ์ด ๋ ๊ฒ ๊ฐ๋ค. ๋ฐ์ฑ์ ํ๊ฒ ๋๋ ์ ์ฑ์ด์๋ค.
2021.09.06 -
210901 ๊ฐ๋ฐ๊ธฐ๋ก: webpack์ ์์๋ณด์
๐ Webpack ์ ๋ฑ์ฅ๋ฐฐ๊ฒฝ ๊ณผ๊ฑฐ์๋ index.html ์ ์คํฌ๋ฆฝํธ ํ์ผ์ ์ฌ๋ ค ์ฌ์ฉํ๋ค. ๋ง์ฝ 3๊ฐ์ js ํ์ผ์ ์ฌ์ฉํ๋ค๋ฉด index.html ์ ์ผ์ผ์ด 3๊ฐ์ jsํ์ผ์ ์ด๋ฐ ์์ผ๋ก ๋ฑ๋กํด์ผ ํ๋ค. ๋ฒ๊ฑฐ๋ก์๋ ๋ฌธ์ ์ง๋ง, ์ด๋ฐ์์ผ๋ก ํ์ผ์ ๋ฑ๋กํ๋ฉด ์ ์ญ ์ค์ฝํ๊ฐ ์ค์ผ๋๋ค๋ ํฐ ๋ฌธ์ ๊ฐ ์๋ค. ์ด๋ ๋ชจ๋(js ํ์ผ)์์ ์ ์ํ sum() ํจ์๋ ๊ณง๋ฐ๋ก ์ ์ญ ํจ์๋ก ๋ฑ๋ก๋์ด ๋ค๋ฅธ ๊ณณ์์๋ ์ฌ์ฉ๋ ์ ์์ง๋ง, ๋ง์ฝ ๋ค๋ฅธ ๋ชจ๋์์ ๋์ผํ ์ด๋ฆ์ ํจ์๊ฐ ๋ ์ ์๋๋ฉด ๊ฑท์ก์ ์ ์๋ ์๋ฌ์ ๋ช์ ๋น ์ง๊ฒ ๋๋ค. ์์ธก์ ํ ์ ์๊ฒ ๋๋ค. ๊ทธ๋ฆฌํ์ฌ ๋ชจ๋ ์์คํ ์ด๋ ๊ฐ๋ ์ด ๋๋๋ฑ์ฅํ๋ค. import ํค์๋๋ก ํ์ํ ๋ชจ๋๋ง ๊ฐ์ ธ์ฌ ์ ์์ด ์ด์ ์ฒ๋ผ ์์ธก ๋ถ๊ฐ๋ฅํ ์๋ฌ๋ฅผ ๋ง๋๋ฐ ์ผ์กฐํ ์ ์์๋ค. ํ์ง๋ง ๋ชจ๋ ์์คํ ..
2021.09.01 -
210831 ๊ฐ๋ฐ๊ธฐ๋ก: ์ ๋ค๋ฆญ
๐ Generic ์ ์ฌ์ฉํ๋ ์ด์ * ํ์ ์คํฌ๋ฆฝํธ์ ์ ๋ค๋ฆญ์ ์๋ฏธํฉ๋๋ค function returnMessage(message: T): T { return message } returnMessage("LIM"); returnMessage(100); : Type ์ ์๋ฏธ, ํ์ง๋ง T ๋ ๋ค๋ฅธ ์ธ์ด์์๋ ์ ๋ค๋ฆญ์ ์ ์ธํ ๋ ๊ด์ฉ์ ์ผ๋ก ๋ง์ด ์ฌ์ฉ๋๋ ๋จ์ด๋ก, ๊ผญ T ๊ฐ ์๋ $ ๋ _ ๋ ๊ฐ๋ฅํ๋ค (๋ฐ๋์ T ๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค๋ ๋ป์ด ์๋๋ค) ๋ ํจ์ ์ ์ ๋จ๊ณ์์ ํ์ ์ด ์ ํด์ง์ง ์์์ง๋ง, ํจ์ ํธ์ถ์ ๋ด๋ถ์ ์ ํ ํ์ (string, number ๋ฑ)์ TS compiler ๊ฐ ์์ ์๊ฒ ๋๋ค. ( => ์๋ํฐ์์ ์๋์์ฑ์ ์ฌ์ฉํ ์ ์๊ฒ ๋์ด ์์ฐ์ฑ ํฅ์์๋ ๊ธฐ์ฌํ ์ ์๋ค.) >>> ์ด์ฒ๋ผ, ..
2021.08.31 -
210830 ๊ฐ๋ฐ๊ธฐ๋ก: nestjs ํธ๋ฌ๋ธ์ํ
๐ ๋ฐ์ฝ๋ ์ดํฐ์ ํ์์ฑ @Injectable() export class HospitalService { constructor( @InjectRepository(Questions) private questionRepository: Repository, @InjectRepository(Result) // ์ด๊ฒ ์์ผ๋ฉด dist ํ์ผ์ ์ํฐํฐ ์์ฑ์๋๋ค. private resultRepository: Repository, @InjectRepository(Answers) private answersRepository: Repository ) { } typeorm model generator ๋ฅผ ํตํด DB์ ํ ์ด๋ธ์ nestjs์ ์ํฐํฐ๋ก ๊ฐ์ ธ์๋ค. ๊ณต์๋ฌธ์์์ @InjectRepository() ๋ฐ์ฝ๋ ์ดํฐ๋, ๋ชจ..
2021.08.31 -
210827 ๊ฐ๋ฐ๊ธฐ๋ก: ์ด๋ ฅ์๋ฅผ ์ฐ์
์ด๋ ฅ์๋ฅผ ์ ๋๋ก ์ฐ์. ์ฝ๋ฉ ๋ชฌ์คํฐ ์ ํ๋ธ์์ ์ฌํด๊ฐ ์ด์ง์ ์ต์ ๊ธฐ๋ผ๊ณ ํ๋ค. ์ง๊ธ ํ์ฌ์์ ์ข ๋ ์ด๋ฃจ๊ณ ๋๊ฐ๊ณ ์ถ์ ๋ง์๋ ์กฐ๊ธ์ฉ ์๊ธฐ์ง๋ง, ์ฌ์ค์ ์ด์ง์ ๋์ ํ๋๊ฒ์ด ๋ฌด์์, ์ธํฐ๋ทฐ์ ๊ฑฐ์ ์ด ๋๋ ค์ ์๊ธฐ ํฉ๋ฆฌํํ๋ ๊ฒ์ด๋ ๊ฑธ ์๋ค. ์ผ๋ง์ ๋งํฌ๋์ธ์ ํตํด ์๋ํ ํฌ ์คํํธ์ ์ ์ง์์๋ฅผ ์ ์ถํ๋ค. ํผ์ ๊ฐ์ ๋ฃ์ ์ด๋ ฅ์๋ ์๋์์ง๋ง, ๊ทธ๋๋ ๋ฉด์ ๋ณผ ๊ธฐํ์ ๋๋ ์๊ธฐ์ง ์์๊น ์๊ฐํ๋๋ฐ ์ค๋ง์ด์๋ค. (๋์ถฉ ๊ดํ์ด๋ผ๋ ๋ป) ์ด๋ ฅ์๋ฅผ ์ด๋ป๊ฒ ์ฐ๊ธฐ ์์ํด์ผํ ๊น. ๋ผ๋ ์๊ฐ์ ๋์์์ด ๋ค์ง๋ง ๋ง์ ์ด๋ป๊ฒ ์์ฑํด์ผ ์ข์ ์ด๋ ฅ์์ธ์ง ๋ชจ๋ฅด๊ฒ ๋ค. ๊ทธ๋์ ๋ฌด์์ ๋ ํผ๋ฐ์ค๋ถํฐ ์์งํ๋ค Resume Reference https://careerly.co.kr/comments/31297?utm_source=crm_dm_opti..
2021.08.29