简体   繁体   English

使用readFileSync编码为utf8在jade电子邮件模板中呈现HTML

[英]Rendering HTML in jade email templates with readFileSync encoded as utf8

I'm trying to send a jade email template but it's currently rendering everything as a string instead of HTML in the actual email. 我正在尝试发送玉石电子邮件模板,但它目前在实际电子邮件中将所有内容呈现为字符串而不是HTML。 I tried looking for other encoding types for fs.readFileSync but am not sure if that's what I should even be changing. 我试着为fs.readFileSync寻找其他编码类型,但我不确定这是否应该改变。

Calling the template here: 在这里调用模板:

var emailTemplate = jade.compile(fs.readFileSync('./views/email/new_user.jade', 'utf8'));
    var html = emailTemplate({
      confirmCode: 233,
      name: params.name,
      siteName: config.siteName
      siteLogo: config.siteLogo
    });

The template: 模板:

div(style='width: 300px; margin: 0 auto')
  div(style='text-align: center')
    img(src='#{siteLogo}')
  | Hi #{name},
  p
    | Welcome to #{siteName}! You can now vote on submissions and leave comments.
    | In order for your submissions to be public, please confirm your account by
    | clicking the confirmation link below
  div(style='background-color: #fafafa; border: 1px solid #ddd; border-right: none; border-left: none; display: block; font-weight: bold; line-height: 35px; height: 35px; text-align: center; width:    100%;')
    a(href='http://localhost/users/confirm/') Confirm your account

Output (in my email): 输出(在我的电子邮件中):

<div style="width: 300px; margin: 0 auto"><div style="text-align: center"><img src="http://localhost/site_logo.png"/></div>Hi USER,<p>Welcome to SITENAME! You can now vote on submissions and leave comments. In order for your submissions to be public, please confirm your account by clicking the confirmation link below</p><div style="background-color: #fafafa; border: 1px solid #ddd; border-right: none; border-left: none; display: block; font-weight: bold; line-height: 35px; height: 35px; text-align: center; width: 100%;"><a href="http://localhost/users/confirm/">Confirm your account</a></div></div>

I think you're having this problem because the Content-Type of your e-mail is not text/html . 我认为您遇到此问题是因为您的电子邮件的Content-Type不是text/html Try doing so. 试着这样做。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM