start 스크립트에는 서버를 시작하는 명령어를 넣고, start:dev 스크립트에는 nodemon을 통해 서버를 실행해 주는 명령어를 넣었습니다. 여기서 nodemon은 src 디렉터리를 주시하고 있다가 해당 디렉터리 내부의 어떤 파일이 변경되면, 이를 감지하여 src/index.js 파일을 재시작해 줍니다.
이제부터는 다음 명령어를 사용하여 서버를 시작할 수 있습니다.
$ yarn start # 재시작이 필요 없을 때 $ yarn start:dev # 재시작이 필요할 때
기존에 실행 중이던 서버를 종료한 뒤 yarn start:dev 명령어를 실행하세요. 그다음에 index.js에서 기존 미들웨어를 모두 제거해 보세요.
index.js
const Koa = require('koa'); const app = new Koa(); app.listen(4000, () => { console.log('Listening to port 4000'); });
파일을 저장할 때 서버가 실행 중인 터미널에 다음과 같은 결과물이 나타나나요?
$ nodemon --watch src/ src/index.js [nodemon] 1.18.11 [nodemon] to restart at any time, enter `rs` [nodemon] watching: /Users/velopert/blog/blog-backend/src/**/* [nodemon] starting `node src/index.js` Listening to port 4000 [nodemon] restarting due to changes... [nodemon] starting `node src/index.js` Listening to port 4000
이제 매번 서버를 수동으로 재시작하는 번거로움이 없으니 참 편하겠지요?