是否可以将上下文设置为循环内的外部变量

时间:2013-05-19 22:28:18

标签: dust.js

我想从以下JSON获取“Discover xx76”和“Visa xx73”等内容。

{
    "challengeMap": {
        "CARD": {
            "verifier": [
                {
                    "value": "Discover",
                    "key": "0"
                },
                {
                    "value": "Visa",
                    "key": "1"
                }
            ],
            "additionalVerifier": [
                {
                    "value": "xx76",
                    "key": "0"
                },
                {
                    "value": "xx73",
                    "key": "1"
                }
            ]
        }
    }
}

我能够遍历VERIFIER数组......但是从那里我无法访问“additionalVerifier”数组。我是否有机会(或)更改JSON结构?

{#challengeMap.CARD.verifier}
  {value} - {challengeMap.CARD.additionalVerifier[$idx].value}
{/challengeMap.CARD.verifier}

任何帮助都将受到高度赞赏。

1 个答案:

答案 0 :(得分:1)

这是因为您的上下文是CARD.verifier,而您正在尝试访问父级其他上下文 - > CARD.additionalVerifier

你可以: 1)更改JSON结构。 2)尝试以下方法:

    {#challengeMap.CARD.verifier card=challengeMap.CARD}
      {value} - {additionalVerifier[{@idx}].value}
    {/challengeMap.CARD.verifier}


    or 

    {#challengeMap.CARD.verifier:challengeMap.CARD}
      {value} - {additionalVerifier{@idx}].value}
    {/challengeMap.CARD.verifier}

Dust Tutorial with Examples.

你可以添加助手并在那个阶段打印上下文..

{@ contextDump key =“current”to =“console /}

然后检查浏览器console / node.js控制台......