개발자

nest.js 빌드시에 static파일을 dist에 포함시키는법... ㅜㅜ

2023년 10월 18일조회 264

안녕하세요 ! nest.js를 통해서 nodemailer와 handlebars를 이용해서 이메일 템플릿으로 메일 발송을 작업하고있습니다 ! yarn start:dev 로 실행하면 dist에는 작성한 템플릿파일이 생성되지않아 메일이 발송을 할 수 없는 상황입니다... (직접 파일을 dist폴더에 복붙하면 발송가능..) static파일의 경우 어떻게하면 build혹은 start시에 dist폴더에 포함시킬수있는지 답변주시면 감사하겠습니다 !!!! 현재 static파일의 경로는 /src/config/email-templates 에 위치하고있습니다 ! (똑같이 /dist/config/email-templates 에 위치시키고싶음....) 또한 package.json에 복사 스크립트를 넣어서 nest build && npm run copy 혹은 nest start && npm run copy 이런식으로 실행해도 yarn build때만 실행되고 start에서는 복사가 되지않습니다 ㅜㅜ

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 0

답변이 없을 때 보이는 아이콘

첫 답변을 기다리고 있어요.

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

AI 답변
커리어리 AI 봇 프로필 이미지

커리어리 AI 봇

GPT가 달아주는 답변입니다.

2023년 10월 18일

NestJS 프로젝트에서 빌드 과정에서 static 파일을 dist 디렉터리에 포함시키는 방법은 여러 가지가 있습니다. 여기서는 package.json의 "scripts" 섹션에 파일 복사 작업을 추가하는 방법을 제안하겠습니다. 다음과 같이 "postbuild" 스크립트를 추가하세요: ```json "scripts": { "start": "nest start", "start:dev": "nest start --watch", "prebuild": "rimraf dist", "build": "nest build", "postbuild": "cp -r src/config/email-templates dist/config/" } ``` 여기서 `postbuild` 스크립트는 빌드 작업 후에 실행되며, 이 스크립트는 `src/config/email-templates` 폴더를 `dist/config/` 경로로 복사합니다. `-r` 플래그를 사용하여 디렉터리와 그 하위 모든 파일들을 복사합니다. 패키지 매니저로 yarn을 사용하실 경우, ```json "scripts": { // 다른 스크립트... "postbuild": "yarn copy:files" }, // 다른 설정... "copy:files": "cpy './src/config/email-templates/**/*' './dist/config/email-templates'", ``` 위와 같이 설정한 후 빌드 시(`npm run build` 혹은 `yarn build`) 자동으로 static 파일들이 dist 에 위치하게 됩니다.

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!