问题描述
我们正在构建一个API,该API需要向用户发送电子邮件。我们将nodemailer集成到Loopbck 4项目中,并计划将EJS用于电子邮件模板。
令我惊讶的是,似乎没有任何有关如何使用EJS模板从回送控制器发送电子邮件的适当文档。
我们感到困惑的原因之一是因为Loopback 3上的文档似乎暗示了EJS已预先配置,这使我们相信它已经存在:
https://loopback.io/pages/en/lb4/readmes/loopback-example-relations.html#configure-server-side-views
解决方法
您不需要任何特殊配置即可在LB4中使用EJS。
import ejs = require('ejs');
import nodemailer = require('nodemailer');
const template = '<%= people.join(","); %>';
const data = ['geddy','neil','alex'];
const html = ejs.render(template,data);
const transporter = nodemailer.createTransport({...});
const sentMail = await transporter.sendMail({
to: '...',subject: '...',html,});
看看@loopback/rest-explorer,它使用EJS渲染前端。