2016-06-19 20 views
0

私はNode.jsアプリケーションでNunjucksをテンプレートエンジンとして使用しています。Nunjucksでオブジェクトが空であることを確認してください

varという名前のオブジェクトがありますが、これは空でもなくてもかまいません。

空である場合は {{ var | dump }} Nunjucksは空のオブジェクトであることを正しく示して、{}と表示します。

問題は、Nunjuckの{% if condition %}ステートメントを使用してオブジェクトが空であるかどうかを確認する方法が見つからないということです。私はvarが空であるかどうかに関係なく、が空であるかどうかに関わらず、var.length,var | lengthvar | first、条件としては普通のvarを試してみましたが、いずれも機能しません。誰もこれを解決する方法を知っていますか?

EDIT:{% if var | dump != '{}' %}を使用して作業を行い、本当にハックソリューションのように思える...

EDIT 2:私はちょうど私が必要なものないオブジェクトのカスタムemptyフィルタを作成することになった:

env.addFilter('empty', function(object) { 
    return Object.keys(object).length === 0; 
}); 

答えて

3

lengthフィルタを使用してオブジェクトの長さにアクセスすることのサポートは、最近Nunjucks 2.5.0に追加されました。

だからあなたが今使用することができます。

{% if var|length %} 
関連する問題