1

在 Handlebars 中,您可以使用它this来查找当前上下文。

你如何在 Nunjucks 中做同样的事情?

例如,如果您想将整个上下文转储为 JSON 字符串:

<script>window.__config__ = {{ this | dump | safe }};</script>

(但this似乎在 Nunjucks 中不起作用。)

4

2 回答 2

6

如果需要context,可以添加全局功能

var env = nunjucks.configure([...
...
env.addGlobal('getContext', function() { 
    return this.ctx;
})

并将她的结果转储到模板中

{{ getContext() | dump| safe }}
于 2016-08-10T19:17:10.877 回答
0

我不认为你的变量this在 nunjucks 模板上可用,但如果它是另一个你想检查的,你可以使用该dump方法。

{{ users | dump }}

这样就会打印出 json 对象,如果你开启了 autoscape,它看起来真的很难看。

{{ users | dump | safe }}

这会很好用

或者:

env.addFilter('pprint', function(str, count) {
    return JSON.stringify(str, null, 4);
});

{{ users | pprint | safe }}

于 2016-08-04T13:44:03.937 回答