为了账号安全,请及时绑定邮箱和手机立即绑定

如何在node.js 中填充ejs模板数据

如何在node.js 中填充ejs模板数据

不负相思意 2019-03-21 15:10:46
如题,我有一个页面:<!---index.html.ejs---><html>  <head>    <title><%= title %></title>  </head>  <body>    <h1><%= title %></h1>    <p>Contents:<br />    <%= contents %>    </p>  </body></html>//data.json{  "title":"Hello World!",  "contents":"你好!世界!!"}//func.jsconst readFile   = require('util').promisify(require('fs').readFile);const renderFile = require('util').promisify(require('ejs').renderFile);async function render_page(template,dbfile){  let result = await readFile(dbfile).catch(err=>{     return new Error("readFile ERROR: " + err);  });  result = result.toString();  let r = renderFile(template,result).catch(err=>{     return new Error("renderFile ERROR: " + err);  });  return r;}exports.render = render_page;//index.jslet result = require('./func').render('index.html.ejs','data.json');执行后反馈不能识别出ejs模板的title是啥……这是为啥?
查看完整描述

2 回答

?
手掌心

TA贡献1942条经验 获得超3个赞

是不是因为你把 result转成了字符串,所以读取不到里面的 title 属性。
去掉 result = result.toString() 试试?

查看完整回答
反对 回复 2019-04-08
?
MM们

TA贡献1886条经验 获得超2个赞

不要传json


查看完整回答
反对 回复 2019-04-08
  • 2 回答
  • 0 关注
  • 600 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信