如何将变量从Express传递给Jade模板

时间:2016-06-16 22:49:01

标签: node.js variables express pug

我已经看到了很多关于此的答案,但没有一个涵盖整个过程。我真的没有想法。

这是我的代码:

快递代码

res.render('index', {expressVar:"My Great Example"});


template.jade

doctype html

block vars

html
    head

    body
        | #{working}

        | #{notWorking}

        | #{notWorking2}


index.jade

extends template.jade

- var localVar = "Other Example"

block vars
    - var working     = "This is working"
    - var notWorking  = expressVar
    - var notWorking2 = localVar


我真正想要做的是获得两个无法在模板中打印的变量。

提前致谢。

1 个答案:

答案 0 :(得分:3)

Darren Schnare撰写了一篇文章,解释了如何解决这个问题: http://darrenschnare.com/blog/2013/08/14/sharing-variables-with-jade-templates/

您需要将所有标记放在根块中,然后在模板中的此块中声明变量。所有变量都可以作为范围子项的每个范围访问。

<强> template.jade

doctype html

block page
    html
        head

        body
            | #{working}

            | #{notWorking}

            | #{notWorking2}

<强> index.jade

extends template

- localVar = "Other Example"

prepend page
    - working     = "This is working"
    - notWorking  = expressVar
    - notWorking2 = localVar