为了账号安全,请及时绑定邮箱和手机立即绑定

在 Go 模板范围循环中,循环外声明的变量是否在每次迭代时重置?

在 Go 模板范围循环中,循环外声明的变量是否在每次迭代时重置?

Go
ITMISS 2021-09-13 20:04:59
我正在尝试使用在 Go 模板范围循环之外声明的变量来查看上一篇文章是否与当前文章发生在同一天。这是一个简化的示例。哪里.Posts是一个 post 结构数组,每个结构都有 a.Content和 a .Date。{{ $prevDate := "" }}{{ range $post := .Posts }}    {{ if ne $prevDate $post.Date }}        <div class="post-date">Posts dated: {{ $post.Date }}</div>    {{ end }}    <div class="post-content">{{ $post.Content }}</div>    {{ $prevDate := $post.Date }}{{ end }}问题是它$prevDate似乎""在循环的每次迭代开始时被重置。任何人都可以帮助我理解为什么$prevDate每次迭代都会重置的值,并可能建议一种方法来完成我在这里尝试做的事情?
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 243 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信