支持强大的过滤器、测试和自定义功能,这些可以在模板中直接使用,极大地增强了模板的灵活性和表达力。比如可以进行字符串操作、数值计算、逻辑判断等。
模板继承功能允许定义一个基础模板框架(如公共的头部和尾部),其他模板可以继承并覆盖特定的块(blocks),这有助于保持模板的一致性和减少代码重复。
支持异步行为,可以在模板中进行异步 API 调用。这对于需要从外部数据源动态生成内容的应用程序尤其有用。
通过自定义过滤器和扩展,开发者可以添加特定的功能到模板引擎中,增加了模板的功能性和适应不同场景的能力。
可以在 Node.js 环境下运行,也可以在浏览器中运行。这意味着开发者可以使用相同的模板代码在服务器端和客户端渲染视图,有助于前后端代码的统一和维护。
Nunjucks 提供详细的错误报告和调试工具,这有助于开发者在开发过程中快速定位和解决模板中的问题。