Liquid技术问答:如何查看Eleventy中对象的全部数据?
在Eleventy中查看Liquid对象的完整内容
你遇到的问题是因为post.data是**对象(Object)**而非数组,所以用[0]索引无法获取内容;直接输出对象显示[object Object]是Liquid的默认行为。以下是几种查看完整对象内容的实用方法:
方法1:使用json过滤器转成JSON字符串
这是最直接的方式,通过Liquid的json过滤器将对象序列化为可读的JSON字符串,完整展示所有属性:
{%- for post in collections.posts -%} <li>{{ post.data | json }}</li> {%- endfor -%}
如果需要查看整个post对象的完整结构,直接替换成{{ post | json }}即可。
方法2:遍历对象的键值对
手动遍历对象的每一个属性键和对应值,自定义展示格式:
{%- for post in collections.posts -%} <li> {%- for key, value in post.data -%} <strong>{{ key }}:</strong> {{ value }}<br> {%- endfor -%} </li> {%- endfor -%}
方法3:开发调试用终端日志输出
如果不想在页面上展示,仅用于开发调试,可以用Liquid的log过滤器将对象输出到Eleventy的运行终端:
{%- for post in collections.posts -%} {%- log post.data, "单篇文章数据详情" -%} {%- endfor -%}
运行Eleventy时,终端会打印出对象的完整结构信息,方便调试。
内容的提问来源于stack exchange,提问作者atreeon
相关产品推荐
相关产品推荐

