繁体   English   中英

Express handlebars 呈现为字符串而不是响应

[英]express handlebars render to string instead of response

我目前成功地使用了 express handlebars - 但是我只想用它来更新和呈现页面的一部分 - 一个随时间变化的项目列表,所以我只想在计时器上更新该列表 基本上在浏览器上我有以下代码:

$.get( "myUrl").then( result => $("#targetdiv").html( result.html ));

所以在服务器上的每个页面上我都在做这样的事情:

app.get("/myUrl", async (req, res) => {res.render( "someTemplateFile");} )

但是,显然这两者不能一起工作——我需要这样做:

app.get("/myUrl", async (req, response) => 
{
   var renderedHtml =   .....someCodeHere...... ("someTemplateFile");
   response.send( {html:renderedHtml} );
}

有没有一种简单的方法可以做到这一点?

像这样使用渲染 API:

var hb = require('express-handlebars').create();
app.get("/myUrl", async (req, response) => 
{
   hb.render("some.hbs",{title:"Title",body:"Body"}).then((renderedHtml) => {
       response.send( {html:renderedHtml} );
   });
});
res.render(
    'locale/Order',
    /*your html template*/,
    dataObject,
    function(err,rawHtml) {
        console.log(rawHtml)
    }
)

暂无
暂无

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

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