2012-11-16 50 views
1

我试图在使用块包括:使用块包括Node.js的玉

的为例: layout.jade

!!!5 
html 
    head 
    body 
     include header 
     #footer footer 
     block javascript 
      script('src'= 'jquery.js') 

header.jade

h1 header 
append javascript 
    script 
     console.log('Hi, I'm header') 

我有:

<h1>header</h1> 
<script>console.log('Hi, I'm header')</script> 
<div id="footer" >footer</div> 
<script src="jquery.js" ></script> 

而我将有:

<h1>header</h1> 
<div id="footer" >footer</div> 
<script src="jquery.js" ></script> 
<script>console.log('Hi, I'm header')</script> 

谢谢:)

回答

4

块不工作的方式与包括文件,据我所知。块可以使用extends功能。所以,你既可以修改你的代码包含的JavaScript为include,或修改它使用extend

这里是如何它可能看起来使用extend

layout.jade

!!! 
html 
    head 
    body 
    block header 
     h1 header 

    block footer 
     #footer footer 

    block javascript 
     script('src'= 'jquery.js') 

index.jade

extends layout 

append javascript 
    script 
    console.log('hi'); 
+0

是的,但你必须用你的解决方案 – Ajouve

+0

以及每个页面重新定义标题,你也可以把标题的内容放在layout.jade中,就像jquery脚本在那里一样。一切都可以在layout.jade中进行,并且您的索引文件可能只是'append javascript'块;编辑来展示这一点。 – madlee

+0

好吧,我想我会这样做。谢谢 – Ajouve