nest-mailman을 소개합니다 🎉🎉
8582 단어 nodejavascriptnestjsnodemailer
약간의 배경
지난 몇 달 동안 squareboat에서 NestJS의 영역에 들어갔습니다.
유연성이 있는 Node.js 프로젝트가 쉽게 손에 잡히지 않을 수 있다는 점을 인정합시다. 올바른 Node.js 프로젝트 구조를 얻기 위해 몇 달 동안 노력한 끝에 우리는 우연히 NestJS를 발견했고 그 이후로 뒤돌아보지 않았습니다.
우리가 작업해 온 nest-mailman 및 기타nest packages에 대한 우리의 동기는 대부분의 응용 프로그램 사용 사례를 해결할 유틸리티 패키지를 제공하는 것입니다.
Enough talk show me the code!
설치
mailman을 시작하고 실행하려면 다음을 실행하십시오.
npm i @squareboat/nest-mailman --save
용법
먼저 가져오기
MailmanModule
를 구성 옵션으로 등록합니다. 이 기사에서는 register
구문을 사용하여 모듈을 정적으로 등록하지만 권장 접근 방식은 registerAsync
를 통해 구성 옵션을 제공하는 것입니다. 자세한 설명은 https://opensource.squareboat.com/nest-mailman/docs/send-mail을 참조하십시오.import { MailmanModule } from '@squareboat/nest-mailman';
@Module({
imports: [
MailmanModule.register({
host: 'smtp.mailtrap.io',
port: 2525,
username: 'c88XXXXXXXXX',
password: 'sdsXXXXXXXXX',
from: '[email protected]',
path: 'path/to/mail/templates'
}),
],
})
export class TestModule {}
NestJS가 매우 강조하는 SOLID 원칙에 따라 Mailman은
MailMessage
및 Mailman
의 두 가지 중요한 API와 함께 제공됩니다.// test.service.ts
import { MailMessage } from '@squareboat/nest-mailman';
@Injectable()
export class TestmailService {
triggerMail() {
// Building mail message
const mailMessage = MailMessage.init();
mailMessage
.subject('Order Received')
.view('orderReceived', { productName: 'XYZ', productId: 123 }); // will look for orderReceived.hbs
// Sending the constructed mail
Mailman
.init()
.to('[email protected]')
.send(mailMessage);
return 'Done';
}
}
Mailman은 기본적으로 핸들바 템플릿에 대해 구성되며 모든 템플릿 파일 이름에 추가됩니다
.hbs
.보너스
우리는 귀하의 응용 프로그램이 출시하는 모든 메일에 대한 템플릿을 작성하는 것이 개발자가 경멸하는 절대적인 잡일이라는 것을 이해하고 있으며 이것이 mailman이 함수 호출만큼 간단하게 이메일을 구축할 수 있는 매우 간단한 일반 메일 빌더 API와 함께 제공되는 이유입니다.
triggerMail(){
const mailMessage = MailMessage.init();
mailMessage
.subject('Testing 2')
.greeting('Hello Sarah,')
.line("You've received a new enquiry")
.line('Summary: The product looks promising! would love to setup a call to discuss more')
.action('View Enquiry', 'https://app.test.in/admin/queries/123');
// ... and you can call line(), action() methods any number of times to build your mail
}
그리고 bam🌟 메일이 준비되었습니다.
nest-mailman에 대한 전체 개요를 보려면 ( https://opensource.squareboat.com/nest-mailman/ )를 방문하십시오.
그리고 이것은 지역 사회에 돌려주는 우리의 기회입니다. 사용 가능한 패키지에 대해 자세히 알아보려면 당사site로 이동하십시오. 우리는 피드백, 비판, 물론 기여를 찾고 있습니다. 또 봐요!
Reference
이 문제에 관하여(nest-mailman을 소개합니다 🎉🎉), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/sparshed/introducing-nest-mailman-2dm텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)