java - Freemarker 宏中的 Hashmap 不起作用
问题描述
我需要遍历 freemarker 宏中的哈希图。但由于某种原因它不起作用,我找不到我的错误。
这是我为测试迭代而编写的宏:
<#macro listtest products>
<#list products as name, price >
${name}: ${price} <br>
</#list>
</#macro>
这是我写的例子:
<@listtest products={ "apple": 5, "banana": 10, "kiwi": 15 } />
我收到以下关于“<#list products as name, price >”行的错误消息:
遇到“,”,但期待:“>”
我在这里做错了什么?
解决方案
您可以使用?keys
迭代 JSON 条目:
<#list products?keys as k>
${k} : ${products[k]} <br>
</#list>