【发布时间】:2016-10-20 16:18:00
【问题描述】:
所以我在我的 Node.js 应用程序中使用 Nunjucks 作为模板引擎。
我有一个对象,我们将调用 var,它可能为空,也可能不为空。
当它是空的,如果我这样做
{{ var | dump }}Nunjucks 正确显示它是一个空对象,显示 {}。
问题是,我找不到任何方法来使用 Nunjuck 的 {% if condition %} 语句检查对象是否为空。我已经尝试过var.length、var | length、var | first 和简单的var 条件,但它们都不起作用,它们都只是评估为真(或假),无论是否var是空的。有谁知道如何解决这个问题?
编辑:使用{% if var | dump != '{}' %} 确实有效,但似乎是一个非常老套的解决方案......
编辑 2:我最终只是为满足我需要的对象创建了一个自定义 empty 过滤器:
env.addFilter('empty', function(object) {
return Object.keys(object).length === 0;
});
【问题讨论】:
标签: javascript node.js templating nunjucks