我有一个 slice
keyList:=[ "2021-02", "2020-08", "2020-07", "2020-05", "2020-02", "2020-01", ]
还有一个 map
dataMap := map[string]int{
"2021-02":123,
"2020-08":234,
"2020-07":234234,
"2020-05":23423,
"2020-02":345345345,
"2020-01":456456,
}
想在模板中通过循环 slice 得到 map 中的值 比如
{{range $index, $date := .keyList}}
{{if .dataMap.$date}} # 这里貌似不对呀,不知道应该怎么取
{{range $key,$item := .dataList.$date}}
<p>{{$date}}:{{$item}}</p>
{{end}}
{{end}}
{{end}}
1
nanjishidu 2021-03-24 08:54:41 +08:00
好像遇到过 模板中先声明赋值一下 datamap
|
2
vanishs 2021-03-24 09:11:23 +08:00
|
3
imherer 2021-03-24 09:13:08 +08:00
````
for _, key := range keyList { fmt.Println(dataMap[key]) } ```` 不知道为什么 贴完整代码提示要验证手机,那就贴关键部分吧 |
5
sunmoon1983 OP 谢谢大家,我找到方法了
``` {{range $item := index $.dataList $date}} <li><b></b><span>{{$item.created_at | date "m-d"}}:<a href="{{$item.url}}">{{$item.title}}</a> </span></li> {{end}} ``` |