د بریښنالیکونو لیږل په ډیری غوښتنلیکونو کې یو مهم فعالیت دی، که د کاروونکي خبرتیاوې، د لیږد تازه معلومات، یا د بازار موندنې موخو لپاره.
په هرصورت، د بریښنالیک حلونو پلي کول ځینې وختونه پیچلي کیدی شي، ځکه چې تاسو باید د ټیمپلیټ ژبې سره میلر مدغم کړئ، د انحصار لپاره وګورئ ...
خو!
د @nestixis/nestjs-mailer
کڅوړې سره، تاسو کولی شئ دا پروسه ساده کړئ پداسې حال کې چې انعطاف او اعتبار ډاډمن کړئ.
دا کڅوړه د عکس العمل او نوډ میلر ځواک څخه ګټه پورته کوي ، دا د متحرک بریښنالیک ټیمپلیټونو رامینځته کولو او په اسانۍ سره بریښنالیکونو لیږلو لپاره عصري او پراختیا کونکي دوستانه وسیله رامینځته کوي.
راځئ چې په دې اړه غور وکړو چې تاسو څنګه کولی شئ دا تنظیم کړئ او وکاروئ :)
د پیل کولو لپاره ، تاسو اړتیا لرئ په خپل NestJS غوښتنلیک کې د nestjs-mailer
کڅوړه نصب کړئ. دا کڅوړه د npm له لارې شتون لري ، نصب کول ګړندي او مستقیم کوي. په خپل ترمینل کې لاندې کمانډ چل کړئ:
npm install @nestixis/nestjs-mailer
یوځل چې کڅوړه نصب شي ، بل ګام ستاسو په غوښتنلیک کې د MailerSdkModule
تنظیم کول دي.
ترتیب مستقیم دی، او د ازموینې موخو لپاره، تاسو کولی شئ د وسیله په څیر وکاروئ
دلته د دې تنظیم کولو څرنګوالي یوه بیلګه ده:
import { MailerSdkModule } from '@nestixis/nestjs-mailer'; import { Module } from '@nestjs/common'; import { AppController } from './app.controller'; import { AppService } from './app.service'; @Module({ imports: [ MailerSdkModule.register({ auth: { user: 'username', password: 'password', host: 'sandbox-smtp.mailcatch.app', port: 2525, ssl: false, }, from: '[email protected]', }), ], controllers: [AppController], providers: [AppService], }) export class AppModule {}
د دې لپاره چې ستاسو بریښنالیکونه په لید کې زړه راښکونکي او ډیر متحرک کړي، تاسو کولی شئ ټیمپلیټونه د عکس العمل سره یوځای کړئ، او پیکج @react-email/components
، تاسو ته اجازه درکوي چې دا ډول بریښنالیک ټیمپلیټونه ډیزاین کړئ.
**مګر له دې مخکې، تاسو باید فایل invite-admin-with-account-template.tsx ته زنګ ووهئ او تنظیم یې کړئ
**
"jsx": "react"
ستاسو په tsconfig.json کې
دلته د نوي مدیر کارونکي ته بلنه ورکولو لپاره د ټیمپلیټ یوه بیلګه ده:
import { Body, Container, Head, Html, Img, Link, Section, Text, } from '@react-email/components'; import * as React from 'react'; export default function InviteAdminWithAccountTemplate({ translation, language, invitationHref, passwordHref, logoUrl, }) { return ( <Html lang={language}> <Head> <style>{/* Your custom styles here */}</style> </Head> <Body style={{ fontFamily: 'Arial, sans-serif' }}> <Section> <Container> {logoUrl ? ( <Img src={logoUrl} alt="Logo" /> ) : ( <Text>{translation.titleInside}</Text> )} <Text>{translation.contentPart1}</Text> <Text>{translation.contentPart2}</Text> <Text> {translation.contentPart3.subpart1} <Link href={invitationHref}> {translation.contentPart3.subpart2} </Link> {translation.contentPart3.subpart3} </Text> <Text> {translation.contentPart4.subpart1} <Link href={passwordHref}> {translation.contentPart4.subpart2} </Link> </Text> </Container> </Section> </Body> </Html> ); }
ستاسو د بریښنالیک ټیمپلیټ رامینځته کولو وروسته ، بل ګام د بریښنالیک لیږل دي. د دې کولو لپاره، تاسو د بریښنالیک لیږونکی ستاسو خدمت ته داخل کړئ.
import { EmailSenderInterface, MAILER_SDK_CLIENT, } from '@nestixis/nestjs-mailer'; import { Inject, Injectable } from '@nestjs/common'; import InviteAdminWithAccountTemplate from './invite-admin-with-account-template'; @Injectable() export class AppService { constructor( @Inject(MAILER_SDK_CLIENT) private readonly emailSender: EmailSenderInterface, ) {} async send(): Promise<void> { const translations = { titleInside: { subpart1: 'Welcome', subpart2: ' to the platform!' }, contentPart1: 'Hello', contentPart2: 'Your admin account has been created.', contentPart3: { subpart1: 'Click here to activate your account: ', subpart2: 'Activate', subpart3: '.', }, contentPart4: { subpart1: 'To set your password, click here: ', subpart2: 'Set password', }, }; const emailContent = await InviteAdminWithAccountTemplate({ translation: translations, language: 'en', invitationHref: 'xxx', passwordHref: 'xxx', logoUrl: 'logo.png', }); await this.emailSender.sendEmail( '[email protected]', 'Admin Invitation', emailContent, ); } }
همدا و! تاسو په بریالیتوب سره په خپل غوښتنلیک کې nestjs-mailer
مدغم کړی.
د نورو جزیاتو او پرمختللو ځانګړتیاو لپاره، وګورئ