在 Handlebars 中的代码下方插入模板代码 layout.hbs

Inserting template code below code in Handlebars layout.hbs

我正在使用 Express Handlebars 项目并有一个模板 foo.hbs,它有一些 javascript 我想在 layout.hbs 中的脚本标签下方插入:

<!DOCTYPE html>
<html>
  <head>
    <title>{{title}}</title>
    <link rel='stylesheet' href='/stylesheets/style.css' />
  </head>
  <body>
    {{{body}}}
  <script type="text/javascript" src="../bower_components/jquery/dist/jquery.js"></script>
  <script type="text/javascript" src="../bower_components/bootstrap/dist/js/bootstrap.js"></script>
  <!-- INSERT custom code here -->
  </body>
</html>

所以如果 foo.hbs 是这样的:

<p>Hello World</p>
<!-- Want to insert this below script tags in layout.hbs -->
<script>
    // Some script that requires jQuery
</script>

有什么想法吗?

干杯。

创建用于添加 css/js 个文件的助手。

  1. 创建文件。用下面的 content.

  2. 称呼它 helpers.js
  3. 创建handlebar实例时,附上上面的助手。

    exphbs.create({ extname :'hbs', defaultLayout: 'layout', helpers : require('PATH-TO/helpers'), });

  4. layout.hbs中,通过在</body>

  5. 之前添加{{{renderJS js}}}来渲染标签
  6. 附上路由js文件查看数据

    res.render('/foo', { 'js': ['/path/to/1st-custom-js.js', 'path/to/2nd-custom-js.js'] });