Как подать файл stati c для шаблона электронной почты в Nest js API - PullRequest
0 голосов
/ 03 мая 2020

Я хочу иметь шаблон электронной почты в папке publi c. Я не знаю, как сделать импорт / доступным шаблон электронной почты в функции отправки электронной почты. Я получаю эту ошибку.

Не могу найти модуль '../../public/view/email-template'.t

Я уже добавил эту строку для гнезд использовать папку publi c для обслуживания файлов stati c, в которых есть файлы HTML, CSS и js.

  app.useStaticAssets(join(__dirname, '..', 'public'));

Это функция отправки шаблона электронной почты

import nodemailer = require('nodemailer');
import sgTransport = require('nodemailer-sendgrid-transport');
import {emailTem} from '../../public/view/email-template'; //This is where I am importing the HTML template

export const SendEmail = async (email: string, link: string, name: string) => {

    const options = {
        auth: {
            api_user: process.env.SG_UserName,
            api_key: process.env.SG_Password
        }
    }


    const client = nodemailer.createTransport(sgTransport(options));

    const emailObj = {
        from: 'noreply@mail.com',
        to: email,
        subject: "Email Confirmation from Us",
        text: emailTem,
        html: emailTem
    };

    client.sendMail(emailObj, function (err, info) {
        if (err) {
            console.log(err);
        }
        else {
            console.log('Message sent: ' + link);
        }
    });

}
 }

1 Ответ

0 голосов
/ 04 мая 2020

В вашем шаблоне электронной почты. js, напишите функцию, которая экспортирует html в виде строки, а затем используйте ее.

export function emailTem() {
let html =`<html></html>`;
return html;
}

В функции шаблона отправки электронной почты,

import {emailTem} from '../../public/view/email-template';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...