在服务器端从Handlebars模板获取HTML代码
我的NodeJS应该发送来自用户的HTML电子邮件通知。 为了保持代码干净,我想从句柄模板中获取这些电子邮件的HTML代码,而不是将HTML代码硬编码到sendEMail方法(这看起来很丑陋)。
我需要服务器从这些.handlebars文件中获取HTML,但这不起作用。 这是我如何获取HTML代码
var handlebars = require('express-handlebars').create({}); var context = { title: 'T' } var template = handlebars.render('../views/emails/passwordReset.handlebars', context); console.log(template);
Console.log(template)
正在返回{}
这里是.handlebars代码:
<h1>{{title}}</h1>
任何人都可以提供这个代码有什么问题的指导?
handlebars.render
不会返回呈现的文本; 相反,它返回一个承诺 。 你可以订阅承诺的成功事件来获得输出:
handlebars.render('test.handlebars', context) .then(function(data) { console.log(data); }) .catch(function(err) { console.error(err); });