ํ์ ์คํฌ๋ฆฝํธ๋ฅผ ํ๋ก์ ํธ์ ์ ์ฉํ๊ธฐ ์ ์ ๋ช ๊ฐ์ง ์ค์ ์ ๊ฑฐ์ณ์ผ ํฉ๋๋ค.
1. TSC 2. ์ค์ ํ์ผ ํฌ๊ฒ ์ด๋ ๊ฒ ๋ ๊ฐ์ง๋ฅผ ๋ฏธ๋ฆฌ ์ค๋นํด๋๊ณ ๋ณธ๊ฒฉ์ ์ผ๋ก ์์ํ๋ฉด ๋ฉ๋๋ค.
1. TSC ์คํ
ํ์ ์คํฌ๋ฆฝํธ๋ก ์์ฑ๋ ํ์ผ์ ์ปดํ์ผ ๊ณผ์ ์ ๊ฑฐ์ณ JS ํ์ผ๋ก ๋ณํ๋ฉ๋๋ค.
์ด๋ฅผ ์ํด์ typescript ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ค์นํ๊ณ TSC(ํ์ ์คํฌ๋ฆฝ ์ปดํ์ผ)์ ์คํํด๋ณด๊ฒ ์ต๋๋ค.
๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ค์นํ๊ธฐ ์ , node.js๊ฐ ์ค์น๋์ด์๋์ง ๋ฒ์ ์ ํ์ธํด์ค๋๋ค. ํฐ๋ฏธ๋์ ๋ค์๊ณผ ๊ฐ์ด ์ ๋ ฅํฉ๋๋ค.
node -v
node.js ๋ฒ์ ์ด ํ์ธ๋์๋ค๋ฉด typescript ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ค์นํฉ๋๋ค. ํฐ๋ฏธ๋์ ๋ค์๊ณผ ๊ฐ์ด ์ ๋ ฅํฉ๋๋ค.
npm i typescript -g
๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ค์น๊ฐ ์๋ฃ๋๋ฉด .ts ํ์ฅ์๋ฅผ ๊ฐ๋ index.ts๋ฅผ ์์ฑํ๊ณ ํ์ ์คํฌ๋ฆฝํธ ์ฝ๋๋ฅผ ์์ฑํฉ๋๋ค.
ํฐ๋ฏธ๋์ tsc(ํ์ ์คํฌ๋ฆฝํธ์ปดํ์ผ) index.ts ์ ๊ฐ์ด ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํฉ๋๋ค.
tsc index.ts
tsc ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๋ฉด, ํ๋ก์ ํธ ํด๋์ ๋์ผํ ์ด๋ฆ์ ์๋ฐ์คํฌ๋ฆฝํธ ํ์ผ(.js ํ์ฅ์๋ฅผ ๊ฐ๋ ํ์ผ)์ด ์์ฑ๋ฉ๋๋ค.
๐์นํฉ๊ณผ ๊ฐ์ ์น ํ์คํฌ ๋งค๋์ ๋ฅผ ํตํด์ ๋ช ๋ น์ด๋ฅผ ์๋ํํ ์ ์๋๋ฐ, ํ์ ์คํฌ๋ฆฝํธ ํ์ผ์ ์ปดํ์ผํ๋
tsc ๋ช ๋ น์ด๋ฅผ ์๋์ผ๋ก ์คํํ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ์นํฉ์ ๊ฐ์๋ฅผ ๋ฃ๊ฑฐ๋ ๋ฌธ์๋ฅผ ์ดํด๋ณด๋ฉด ๋์์ด ๋ฉ๋๋ค.
(๊ฐ์์ ๊ณต์๋์ด ๊ณต์ ํด์ฃผ์ ๊ฐ์ ๋ฐ ์๋ฃ๋ ํ๋จ์ ์ ์ด๋๊ฒ ์ต๋๋ค!)
2. ์ค์ ํ์ผ
ํ์ ์คํฌ๋ฆฝํธ์ ์ต์ ์ ์ค์ ํ ๋๋ tsconfig.json ํ์ผ์ ์์ฑํฉ๋๋ค.
์์ฃผ ์ฐ์ด๋ ์ค์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
1. allowJs: ์๋ฐ์คํฌ๋ฆฝํธ ํ์ผ์ ํ์ฉํ๋ ์ต์
2. checkJs: ์๋ฐ์คํฌ๋ฆฝํธ ํ์ผ์์ ํ์ ๊ฒ์ฌ ๋ฐ ์ค๋ฅ ๋ณด๊ณ ๋ฅผ ์ง์ํ๋ ์ต์
3. noImplicitAny: ์์์ ์ผ๋ก ํ์ ์ Any๋ก ์ค์ ํ์ง ์๋๋ก ํ๋ ์ต์
์ด์ธ์๋ ์์ฃผ ์ฐ์ด๊ฑฐ๋ ํ๋ก์ ํธ์ ํ์ํ ์ค์ ์ด ์์ ๋๋ง๋ค
ํ์ ์คํฌ๋ฆฝํธ ๊ณต์๋ฌธ์ -> Tools -> References์์ ํ์ธํ ์ ์์ต๋๋ค.
https://www.typescriptlang.org/tsconfig
3. ํ๋ ์ด๊ทธ๋ผ์ด๋
์ถ๊ฐ์ ์ผ๋ก, ํ์์คํฌ๋ฆฝํธ ๊ณต์ ๋ฌธ์์ ํ๋ ์ด๊ทธ๋ผ์ด๋(Playground) ํ์ด์ง์์
์์ฑํ ํ์ ์คํฌ๋ฆฝํธ ์ฝ๋๋ฅผ ์ฆ์์์ ์ปดํ์ผ๋ง ๊ฒฐ๊ณผ๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
https://www.typescriptlang.org/play
๋ง์ง๋ง์ผ๋ก ๊ฐ์์ ๊ณต์์ด์ ์บกํดํ๊ต๋์ ์ ์ฉํ ์๋ฃ๋ค์ ๊ณต์ ํ๋ฉด์ ๋ง๋ฌด๋ฆฌํ๊ฒ ์ต๋๋ค.
ํ๋ก์ ํธ ์ฒซ ์ค์ ํ๋ ๋ฐฉ๋ฒ์ ์ธ์ ๋ ๋ฏ์ ๊ฒ ๊ฐ์ต๋๋ค. ๊ทธ๋์ ์ค์ค๋ก ๋๊ณ ๋๊ณ ์ฐพ์๋ณผ ์ ์๋๋ก
๊ธฐ๋ก์ ๋จ๊ธฐ๋ ์ค์ธ๋ฐ, ์ ์ฒ๋ผ ํค๋งค๋ ๋ถ๋ค์๊ฒ๋ ์กฐ๊ธ์ด๋๋ง ๋์์ด ๋๋ฉด ์ข๊ฒ ์ต๋๋ค.
์ด์ ๋๋ฅผ ์ํ ์ผ์ด ํ์ธ์๊ฒ๋ ๊ฐ์น์๊ธฐ๋ฅผ ๋ฐ๋ผ๋ ์๋ฆฌ์ ์ด์์ต๋๋ค.๐
NPM ์ค์น ๋ช ๋ น์ด ํธ๋๋ถ
์ธํ๋ฐ์ ์ ๋ฃ ๊ฐ์ 'ํ์ ์คํฌ๋ฆฝํธ ์ ๋ฌธ - ๊ธฐ์ด๋ถํฐ ์ค์ ๊น์ง'๋ฅผ ์๊ฐํ๊ณ ์์ฑํ๋ ๊ธ์ ๋๋ค.
(๊ฐ์ ์ ๊ณต์์ด์ ์บกํดํ๊ต ๋์ ํ์ ์คํฌ๋ฆฝํธ ํธ๋๋ถ๋ ๊ฐ์ด ์ฐธ๊ณ ํ๋ฉด ์ข์ต๋๋ค.๐)
'๐ฉโ๐ป๊ฐ๋ฐ_TIL > TIL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ์ ์คํฌ๋ฆฝํธ] ์ฐ์ฐ์๋ฅผ ์ด์ฉํ ํ์ ์ ์ (0) | 2022.01.15 |
---|---|
[ํ์ ์คํฌ๋ฆฝํธ] ์ธํฐํ์ด์ค (0) | 2022.01.14 |
[ํ์ ์คํฌ๋ฆฝํธ] ํ์ ์คํฌ๋ฆฝํธ๋ฅผ ์ฐ๋ ์ด์ (0) | 2022.01.11 |
[๋ฆฌ์กํธ]๋ฆฌ์กํธ ๋ผ์ฐํฐ ์ด๊ธฐ ์ธํ ์ ํด๋ณด์! (0) | 2021.12.25 |
ํฐํธ๋ฅผ ์ ์ฉํด๋ณด์! (ํฐํธ ๋ค์ด๋ก๋) (0) | 2021.12.20 |