我正在使用 node.js 邮件模块从节点服务器发送电子邮件。我为此使用了模板文件,但是在发送消息时我修剪了所有空格。我试图在模板的最后一行添加 '\n' 但它也不起作用。以下是模板文件的示例:
Hi {{username}},\\n
Thanks for creating an account with us
我试过 \n 和 \n ,一切都不起作用。有什么帮助吗?
谢谢,
nodemailer
支持两种类型的模板,text
即html (or templateFn() - case of loopback)
.
该选项text
用于不支持 HTML 呈现的电子邮件客户端,因此\n
应在此选项中用于新行。
相反,您应该在选项中交换\n
与。<br>
html
希望这会对你有所帮助。
这是一种已知行为,mustache 用于 HTML 模板,在 HTML 中,新行将仅收缩为一个空格。
您可以尝试做类似的事情,{{new_line}}
而不是您的\\n
, 并new_line: "\n\xA0"
在您的数据中定义。\xA0
是不可破坏的空间,如果你想创建两个新行,它可以分隔行。
另一种解决方案是不使用模板,而只是将文件的内容作为文本获取,fs.readFileSync(filename)
并使用正则表达式替换{{xxx}}
为对象内容。