Express 在jade'中包含模板;s html

Express 在jade'中包含模板;s html,express,pug,Express,Pug,如果我使用jade中的点符号来使用实际的html标记,我想知道如何在jade模板中“包含templateName” doctype html html head link(rel='stylesheet', href='/stylesheets/header.css') body. <div class="logo-container"> include someTemplate </div> doctype

如果我使用jade中的点符号来使用实际的html标记,我想知道如何在jade模板中“包含templateName”

doctype html
html
  head
    link(rel='stylesheet', href='/stylesheets/header.css')
  body.
     <div class="logo-container">
            include someTemplate
     </div>
doctype html
html
头
链接(rel='stylesheet',href='/stylesheets/header.css')
身体。
包含一些模板
执行上述示例将显示文本“include someTemplate”,而不是模板本身


关于如何实现这一点,有什么想法吗?

include在纯文本块中不起作用,因为它是Jade语句而不是JavaScript表达式,所以逐行移动纯文本块会更容易,因此您可以同时使用:

body
  | <div class="logo-container">
  include someTemplate
  | </div>
如果您的模板不需要jade/pug呈现(即,如果它只是常量/静态文本),则可以使用输出变量:

body.
     <div class="logo-container">
            !{someTemplate}
     </div>
body。
!{someTemplate}

这只有在您在路由器中输入并将其作为变量传递给模板时才有效。动态渲染有更复杂的方法,但到那时,您最好使用上述方法之一。

@Graham第一个示例很有效,尽管我不太喜欢每行之前的。对于第二个示例,您能否提供一个将模板作为变量加载到路由中的示例?@IanS我刚刚编辑的内容为您提供了另一种处理方法,并提供了一个指向文件读取示例的链接。我们可能需要对原始问题进行更详细的编辑,以便为您提供具体的建议(例如为什么需要输出原始HTML、包含的文件中有什么内容等)。如果以上内容对您不起作用,请回复此评论,我将用我的问题对您的原始问题进行评论:)谢谢您的编辑。这两个例子对我都很有用,我是一个快乐的人,有一些动态的jade模板。如果可能的话,尽快升级到pug以获得最新版本。这是值得的,通常只需要将*.jade重命名为*.pug,并在app.js中添加几行。建议不错。关于帕格和杰德,还有更多的问题要问
body.
     <div class="logo-container">
            !{someTemplate}
     </div>