液体标记图过滤器示例

时间:2012-09-06 15:12:19

标签: arrays liquid

我是否有液体地图过滤器如何工作的通用示例?似乎没有这方面的文件。地图过滤器是“在给定属性上映射/收集数组” - 但是如何确定属性?

此示例存在 - Liquid Template Map Filter - 但它似乎特定于单个用例。地图如何运作?

据我所知,要过滤的输出是数组,但map的参数是什么?

例如:

{{ page.tags | map: 'name' }}

名字是什么?它是要输出的值的标签吗?对于给定的对象,如何确定该标签可能是什么?

1 个答案:

答案 0 :(得分:6)

map通过迭代元素数组的每个元素,然后获取给定属性的值来工作。

你必须知道你传递的元素数组的属性是什么。

ie:如果你有一个collection.products,并且想要获取集合中每个产品的句柄,然后以逗号分隔的字符串返回它们,那么你可以这样做:

{{ collection.products | map: 'handle' | join: ',' }}

这将列出所有产品句柄:

across-the-mountains,alpine-meadow,appproaching-storm,arboretum-poster,around-st-peters,basic-tee,bryce-canyon-sunrise,crocuses,flower-print-mum,gatineau-park-stream,product-2,hooded-sweater,product-3,last-light-at-sandbanks,last-light-on-opabin-plateau,library-of-parliament,library-of-parliament-poster,long-beach-tofino,magnolia,meadow-2,mountain-panoramic-2,ready-to-frame-tulip-print-10,ready-to-frame-tulip-print-11,ready-to-frame-tulip-print-12,ready-to-frame-tulip-print-13,ready-to-frame-tulip-print-14,ready-to-frame-tulip-print-15,ready-to-frame-tulip-print-2,ready-to-frame-tulip-print-3,ready-to-frame-tulip-print-4,ready-to-frame-tulip-print-6,ready-to-frame-tulip-print-7,ready-to-frame-tulip-print-8,ready-to-frame-tulip-print-9,ready-to-frame-tulip-print-5,ready-to-frame-tulip-print-1,sample,shopify-shirt,shirt,sunset-on-lake-ohara,t-shirt,library-of-parliament2,test-prdouct,test-prod,test-product-1,test-product,testing,the-arboretum-poster,the-arboretum-central-experimental-farm,the-colosseum