在text/template
包中的{{range pipeline}} T1 {{end}}
動作中可能訪問範圍操作之前的管道值,還是父/全局管道作爲參數傳遞給Execute?在Go模板中,訪問範圍內的父/全局管道
工作的例子,顯示了我嘗試做:
package main
import (
"os"
"text/template"
)
// .Path won't be accessible, because dot will be changed to the Files element
const page = `{{range .Files}}<script src="{{html .Path}}/js/{{html .}}"></script>{{end}}`
type scriptFiles struct {
Path string
Files []string
}
func main() {
t := template.New("page")
t = template.Must(t.Parse(page))
t.Execute(os.Stdout, &scriptFiles{"/var/www", []string{"go.js", "lang.js"}})
}
的可能重複[在你如何訪問時的「有」或「範圍」範圍內的外部範圍的模板? ](http://stackoverflow.com/questions/14800204/in-a-template-how-do-you-access-an-outer-scope-while-inside-of-a-with-or-rang) – mcuadros