【问题标题】:Express middleware to inject content into <head>Express 中间件将内容注入 <head>
【发布时间】:2013-01-31 17:16:49
【问题描述】:

我想创建一些 Express 中间件,将内容注入服务器返回的每个 HTML 文档的

部分。这是可能的还是可取的?

谢谢!

【问题讨论】:

  • 这可能不是中间件的工作,它可能是模板渲染的一部分。

标签: node.js express connect middleware


【解决方案1】:

Express Documentation/res.set

例子:

app.all("*", function(req,res,next){
    res.set({
        "Myheader1":"Data1",
        "MyHeader2":"Data2"
    });
    next();
});

您应该使用像JADE 这样的模板引擎,它允许布局,您可以定义基本继承。我建议您查看 Jade 文档中的 Template inheritance。我敢打赌大多数模板语言都有这个功能。

【讨论】:

    【解决方案2】:

    您可以使用ejs 作为视图引擎。在server.js 中设置视图引擎,例如:

    // Set the view engine to ejs (JS templating)
    app.set('view engine', 'ejs');
    

    在您的视图 (.ejs) 中,您可以通过这种方式添加您的部分:

    <%include ../partials/head %>
    

    【讨论】:

      猜你喜欢
      • 2015-05-04
      • 2021-02-06
      • 1970-01-01
      • 2017-06-02
      • 2017-07-18
      • 2019-07-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多