Hot reload
๊ฐ๋ฐ ๊ณผ์ ์์ ์์ค์ฝ๋๋ฅผ ์์ ํ์ ๋ ๋ฐ๋ก ์น ์ฌ์ดํธ์ ๋ฐ์ํ์ฌ ์์ ๊ฒฐ๊ณผ๋ฅผ ๋น ๋ฅด๊ฒ ๋ณผ ์ ์๋ ๊ธฐ๋ฅ.
๋น์ทํ ๊ฐ๋
์ผ๋ก cold reload๊ฐ ์๋๋ฐ, ์ด๋ ์์ค์ฝ๋ ์์ ํ ํ๋ก๊ทธ๋จ์ ์ฌ์์ ํด์ผ ๋ณ๊ฒฝ ๋ด์ฉ์ด ๋ฐ์๋๋ค.
hot reload๋ ๊ฐ๋ฐ ์๋์ ํฐ ์ํฅ์ ๋ฏธ์น๋ค.
Firebase Functions + Typescript
Typescript๋ build ๊ณผ์ ์ด ํ์ํ๋ค. ๋ฐ๋ผ์ Firebase Functions ๊ธฐ๋ฅ์ Typescript๋ก ๊ฐ๋ฐํ ๋ Hot reload ๋ฅผ ์ง์ํ๊ธฐ ์ํด์๋ ์ ์ฅ โ build โ mount ์ ๊ณผ์ ์ด ํ์ํ๋ค.
google, stack overflow ์ ๋ค์ํ ๊ตฌํ๋ฐฉ๋ฒ์ด ์์ง๋ง firebase ์ ๋ฒ์ ์ด ์ต์ ํ ๋๊ธฐ ๋๋ฌธ์ธ์ง ์ ์์ ์ผ๋ก ๋์ํ๋ ๊ฒฐ๊ณผ๋ฌผ์ ์ฐพ๊ธฐ ํ๋ค์๋ค.
๊ฒฐ๋ก
functions ๋๋ ํ ๋ฆฌ์ package.json ํ์ผ์ ์์ ํ๋ค
AS-IS
"scripts": {
...,
"serve": "npm run build && firebase emulators:start --only functions",
...
}
JSON
๋ณต์ฌ
TO-BE
"scripts": {
...,
"serve": "tsc -w | firebase emulators:start --only functions",
...
}
JSON
๋ณต์ฌ
functions ๋ด๋ถ ํ์ผ์ ์์ ๋์์ ๋ functions์ ๋ฐ๋ก ๋ฐ์๋จ์ ํ์ธํ ์ ์์๋ค.