Jade - 在脚本标签内使用Block

时间:2012-06-09 23:46:32

标签: templates block pug

您好我正在尝试使用Jade的 extends 作为node.js项目,而ideia应该是这样的:

layout.jade:

head
    script
        $(document).ready(function() {
        block js_doc_ready
            //here goes the doc ready
        });

index.jade:

block js_doc_ready
    alert('hello!');
    alert('one more js line code');
    alert('end my js doc ready for this view');

这会给我一个像这样的index.html:

...
<head>
    <script type="text/javascript">
            $(document).ready(function() {
                alert('hello!');
                alert('one more js line code');
                alert('end my js doc ready for this view');         
            });
    </script>
</head>
...

但是当我看到结果时,'块js_doc_ready'不被视为Jade块。 此外,即使它被视为一个块,“alert('hello!);'也不会被视为a,而是一个Jade标记。

这是我以前在django模板中所做的事情,但是在使用所有这些标签的玉器中,没有做纯HTML的自由我仍然觉得制作这个东西有点太奇怪了。

1 个答案:

答案 0 :(得分:23)

Jade不会翻译'style'和'script'代码中的内容。从不。

根据我给出的答案to another question(使用样式元素,但基本相同),将会起作用。

!!!
head
  title Hello jade
  | <script type='text/javascript'>
  | $(document).ready(function() {
      block js_doc_ready
  | });
  | </script>

这样:jade将包含HTML'script'标签和$ .ready行,但也会包含你的块。