一尘不染

模板中的for循环

go

我需要for在模板中循环。

for i := start; i < finish; i++ {
    // do something
}

它是range与预准备数组一起使用的一种方法,还是如何将此功能添加到模板中?


阅读 662

收藏
2020-07-02

共1个答案

一尘不染

最简单的方法可能是使用range和外部函数。例如(播放中):

func For(start, end int) <-chan int {
    c := make(chan int)
    go func() {
        for i := start; i < end; i++ {
            c <- i
        }
        close(c)
    }()
    return c
}

在模板中:

{{range For 0 10}}
i: {{.}}
{{end}}
2020-07-02