gpt4 book ai didi

google-closure-templates - 如何在google闭包模板(soy模板)中声明和更新变量

转载 作者:行者123 更新时间:2023-12-02 03:10:09 25 4
gpt4 key购买 nike

让我们取 2 个数组 arr1 = ['a', 'b', 'c']arr2 = ['1' , '2', '3'] .当将这些数组作为参数传递给 soy 模板时,我想如下所示进行迭代并打印一个 index 指示到目前为止迭代的项目总数。

index: 0 //variable assigned to 0 by default
{foreach $i in $arr1}
{foreach $j in $arr2}
index = index + 1; //variable incremented by 1
{$index} th item //print item index
{/foreach}
{/foreach}

由于使用 let 声明的变量无法重新分配给新值,模板中是否有一种方法可以实现我上面显示的逻辑。

最佳答案

在 block 中,您可以使用三个仅将迭代器作为参数的特殊函数:

  • isFirst($var) 仅在第一次迭代时返回 true
  • isLast($var) 仅在最后一次迭代时返回 true
  • index($var) 返回列表中的当前索引。列表索引从 0 开始。

然后你可以使用index($j):

{foreach $i in $arr1}
{foreach $j in $arr2}
{index($j)}
{/foreach}
{/foreach}

希望我能帮到你 ;)

来源:https://developers.google.com/closure/templates/docs/commands#foreach

关于google-closure-templates - 如何在google闭包模板(soy模板)中声明和更新变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40394625/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com