将动态html模板传递给express-ejs

时间:2019-05-12 22:46:18

标签: javascript node.js express ejs

我正在研究一种需要用户输入(html-css-js)的东西,并且在该模板中,我想用数据库中的数据填充并显示它(服务器端渲染很重要)

我的landingPage.ejs仅有head标签,此刻将呈现我的模板。

<html>
<%- body -%>
</html>

现在,考虑我的api路线

router.post(/:user/:landingPage, (req, res) => {
   // Eventually this will be from our req.body
   const body =  `<html>
                  <title> <%= myObject.headline =%> </title>
                  <body>
                  <h1> <%=  myObject.headline %></h1>
                  <% if(myObject.para)  { %>
                  <% } %>
                  <p>  <%= {myObject.para} %>
                  <button> <%= {myObject.ca} %></button>
                  </body>
                  </html>`

   const myObject = {
         ca: "Learn more",
         headline: "This is Headline",

    }

 res.render('landingPage.ejs', 

})

在上述API路由通知<title> <%= myObject.headline =%> </title><button> <%= {myObject.ca} %></button>中,相同的数据应来自const myObject,最后一行res.render('landingPage.ejs'不完整

如何在模板引擎中从对象渲染某些内容/数据? (请注意,上面的对象包含<% if(myObject.para) { %>,所以我们不能使用字符串插值)

0 个答案:

没有答案