douguanya6399 2014-01-23 10:45
浏览 97
已采纳

Golang在模板中用逗号分隔项目

I am trying to display a list of comma separated values, and don't want to display a comma after the last item (or the only item if there is only one).

My code so far:

Equipment:
    {{$equipment := .Equipment}}
    {{ range $index, $element := .Equipment}}
        {{$element.Name}}
        {{if lt $index ((len $equipment) -1)}}
            ,
        {{end}}
    {{end}}

The current output: Equipment: Mat , Dumbbell , How do I get rid of the trailing comma

  • 写回答

3条回答 默认 最新

  • dongnai2804 2014-01-23 10:48
    关注

    A nice trick you can use is:

    Equipment:
        {{$equipment := .Equipment}}
        {{ range $index, $element := .Equipment}}
            {{if $index}},{{end}}
            {{$element.Name}}
        {{end}}
    

    This works because the first index is 0, which returns false in the if statement. So this code returns false for the first index, and then places a comma in front of each following iteration. This results in a comma separated list without a leading or trailing comma.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 为什么eprime输出的数据会有缺失?
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题