2

我正在使用 node.js 邮件模块从节点服务器发送电子邮件。我为此使用了模板文件,但是在发送消息时我修剪了所有空格。我试图在模板的最后一行添加 '\n' 但它也不起作用。以下是模板文件的示例:

Hi {{username}},\\n

Thanks for creating an account with us

我试过 \n 和 \n ,一切都不起作用。有什么帮助吗?

谢谢,

4

2 回答 2

4

nodemailer支持两种类型的模板,texthtml (or templateFn() - case of loopback).

该选项text用于不支持 HTML 呈现的电子邮件客户端,因此\n应在此选项中用于新行。

相反,您应该在选项中交换\n与。<br>html

希望这会对你有所帮助。

于 2018-08-20T01:37:59.890 回答
1

这是一种已知行为,mustache 用于 HTML 模板,在 HTML 中,新行将仅收缩为一个空格。

您可以尝试做类似的事情,{{new_line}}而不是您的\\n, 并new_line: "\n\xA0"在您的数据中定义。\xA0是不可破坏的空间,如果你想创建两个新行,它可以分隔行。

另一种解决方案是不使用模板,而只是将文件的内容作为文本获取,fs.readFileSync(filename)并使用正则表达式替换{{xxx}}为对象内容。

于 2012-04-19T14:13:56.307 回答