๐ Yarn์ ์ฌ์ฉํ TypeScript ํ๋ก์ ํธ์ ์๋ ๋น๋ ๋ฐ ์ฌ์์ ์ค์ ๋ฐฉ๋ฒ
TypeScript ํ๋ก์ ํธ์์ ํ์ผ ๋ณ๊ฒฝ ์ ์๋์ผ๋ก ๋น๋ํ๊ณ Electron ์ ํ๋ฆฌ์ผ์ด์
์ ์ฌ์์ํ๋ ค๋ฉด, Nodemon๊ณผ TypeScript ์ปดํ์ผ๋ฌ(tsc)๋ฅผ ํ์ฉํ ์ ์์ต๋๋ค.
1. nodemon.json ์ค์
Nodemon ์ค์ ํ์ผ(nodemon.json)์ ์์ฑํ๊ณ , TypeScript ํ์ผ์ ๋ณ๊ฒฝ์ ๊ฐ์ํ๋๋ก ์ค์ ํฉ๋๋ค.
{ "watch": ["src/**/*.ts"], "ext": "ts", "exec": "yarn build && electron ." }
watch: ๊ฐ์ํ ํ์ผ์ ๊ฒฝ๋ก ๋ฐ ํจํด์ ์ง์ ํฉ๋๋ค.ext: ๊ฐ์ํ ํ์ผ์ ํ์ฅ์๋ฅผ ์ง์ ํฉ๋๋ค.exec: ํ์ผ ๋ณ๊ฒฝ ์ ์คํํ ๋ช ๋ น์ด์ ๋๋ค. ์ฌ๊ธฐ์๋yarn build๋ก TypeScript ํ์ผ์ ์ปดํ์ผํ๊ณ ,electron .์ผ๋ก ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํํฉ๋๋ค.
2. package.json ์คํฌ๋ฆฝํธ ์ค์
package.json์ ํ์ํ ์คํฌ๋ฆฝํธ๋ฅผ ์ถ๊ฐํฉ๋๋ค.
{ "scripts": { "build": "tsc", "start": "nodemon" }, // ๊ธฐํ ์ค์ … }
build: TypeScript ์ปดํ์ผ๋ฌ(tsc)๋ฅผ ์ฌ์ฉํ์ฌ ํ๋ก์ ํธ๋ฅผ ๋น๋ํฉ๋๋ค.start:nodemon์ ์คํํ์ฌ ํ์ผ ๋ณ๊ฒฝ ๊ฐ์ง ๋ฐ ์๋ ๋น๋ ๋ฐ ์ฌ์์์ ํฉ๋๋ค.
3. tsconfig.json ์ค์
tsconfig.json ํ์ผ์์ TypeScript ์ปดํ์ผ๋ฌ ์ค์ ์ ํ์ธํฉ๋๋ค. outDir์ ์ค์ ํ์ฌ ์ปดํ์ผ๋ ํ์ผ์ด ์ ์ฅ๋ ์์น๋ฅผ ์ง์ ํฉ๋๋ค.
{ "compilerOptions": { "outDir": "./dist", // ๊ธฐํ ์ต์
… } // ๊ธฐํ ์ค์ … }
4. ํ๋ก์ ํธ ์คํ
์ด์ yarn start ๋ช
๋ น์ด๋ก ํ๋ก์ ํธ๋ฅผ ์คํํ๋ฉด, src ๋๋ ํ ๋ฆฌ ๋ด TypeScript ํ์ผ์ด ๋ณ๊ฒฝ๋ ๋๋ง๋ค ์๋์ผ๋ก ๋น๋๋๊ณ Electron ์ ํ๋ฆฌ์ผ์ด์
์ด ์ฌ์์๋ฉ๋๋ค.
yarn start
์ด ์ค์ ์ ํตํด ๊ฐ๋ฐ ๊ณผ์ ์ ๋์ฑ ํจ์จ์ ์ผ๋ก ๋ง๋ค ์ ์์ผ๋ฉฐ, ๋ณ๊ฒฝ์ฌํญ์ด ์ค์๊ฐ์ผ๋ก ๋ฐ์๋์ด ๋น ๋ฅธ ํผ๋๋ฐฑ์ ์ป์ ์ ์์ต๋๋ค.
๋ ํผ๋ฐ์ค
'DEV' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| Typescript์์ require() of ES Module (1) | 2024.01.26 |
|---|---|
| Typescript์ interfaced์ type์ ์ฐจ์ด๋ ๋ญ๊น (0) | 2024.01.25 |
| Electron ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ: Yarn์ ํ์ฉํ ๊ธฐ๋ณธ ์ค์ ๊ณผ ํ์ผ ๊ตฌ์ฑ (0) | 2024.01.04 |
| 2023-50W ๋๋ ธ์คํฐ๋ (0) | 2023.12.12 |
| Intro. Face-based Cryptographic Key Generation (0) | 2023.03.08 |
๋๊ธ