【问题标题】:How can I set different <title> values for each template in ejs?如何为 ejs 中的每个模板设置不同的 <title> 值?
【发布时间】:2015-06-30 21:28:40
【问题描述】:

我正在使用 Sails.js,它带有 ejs 模板。有一个名为 layout.ejs 的默认视图,它始终包含来自其他模板的正文部分。 title 元素在 layout.ejs 中定义,因此总是相同的。由于 SEO,我想根据包含的视图更改标题。有没有办法知道在 .ejs 文件中实际从 Sails 调用哪个视图?

【问题讨论】:

    标签: sails.js ejs


    【解决方案1】:

    layout.ejs&lt;title&gt; 标签更新为

    &lt;title&gt;&lt;%= title %&gt;&lt;/title&gt;

    并从您的控制器发送title 值以及其他数据,例如

    res.view('viewname', { title: 'YourTitle', data: data });

    希望这会有所帮助!

    【讨论】:

    • 如果您在每个控制器中设置页面标题,此解决方案可以正常工作。否则它将与title is not defined at eval 一起失败。我在这里扩展了这个解决方案:stackoverflow.com/questions/53520452/…
    猜你喜欢
    • 2018-12-24
    • 2010-10-11
    • 2012-01-23
    • 1970-01-01
    • 2015-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-29
    相关资源
    最近更新 更多