You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Liquid语法转Nunjucks写法是否正确?Eleventy报set语句错误如何解决

错误原因

你遇到的报错是因为Nunjucks的过滤器传参语法和Liquid不一致:

  • Liquid支持过滤器名: 参数的传参写法
  • Nunjucks要求所有过滤器参数必须用小括号包裹,否则解析器无法识别,就会抛出expected block end in set statement的语法错误

修正后的代码

把getPostsByContributor后面的参数放进小括号即可:

{% set posts = collections.post | getPostsByContributor(contributor.key) %}

如果后续需要给过滤器传递多个参数,直接在括号内用逗号分隔参数即可,格式为| 过滤器名(参数1, 参数2)。

内容的提问来源于stack exchange,提问作者rocco

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 09:12:03