Go:使用html/template在新行上打印切片中的每个元素
如何在新行上打印“苹果”、“橙色”和“梨” 去:Go:使用html/template在新行上打印切片中的每个元素,go,Go,如何在新行上打印“苹果”、“橙色”和“梨” 去: const titlepage=` {{.Title} {{range$i:=.Body}{{$i}}{{end}} ` 类型tp结构{ 标题字符串 Body[]字符串 } func Read()([]字符串){ a:=[]字符串{“苹果”、“橘子”、“梨”} 归还 } func main(){ as:=tp{Title:“Hello”,Body:Read()} t:=template.Must(template.New(“Tele”).Pars
const titlepage=`
{{.Title}
{{range$i:=.Body}{{$i}}{{end}}
`
类型tp结构{
标题字符串
Body[]字符串
}
func Read()([]字符串){
a:=[]字符串{“苹果”、“橘子”、“梨”}
归还
}
func main(){
as:=tp{Title:“Hello”,Body:Read()}
t:=template.Must(template.New(“Tele”).Parse(titlepage))
t、 执行(os.Stdout,as)
}
电流输出:
<html>
<h1>Hello</h1>
<h1>appleorangepear</h1>
</html>
你好
苹果香梨
运行中的代码:模板中的换行符将复制到结果中。如果您想在
{{$i}}
之后添加一个换行符,只需添加一个即可
编辑:如果希望在web浏览器中显示换行符,则需要使用HTML元素,如
,或将项目放入
(列表)中。我在代码中添加了一个
const titlepage=`
{{.Title}
{{range$i:=.Body}{{$i}}
{{end}
`
类型tp结构{
标题字符串
Body[]字符串
}
func Read()([]字符串){
a:=[]字符串{“苹果”、“橘子”、“梨”}
归还
}
func main(){
as:=tp{Title:“Hello”,Body:Read()}
t:=template.Must(template.New(“Tele”).Parse(titlepage))
t、 执行(os.Stdout,as)
}
模板中的换行符将复制到结果中。如果您想在{{$i}}
之后添加一个换行符,只需添加一个即可
编辑:如果希望在web浏览器中显示换行符,则需要使用HTML元素,如
,或将项目放入
(列表)中。我在代码中添加了一个
const titlepage=`
{{.Title}
{{range$i:=.Body}{{$i}}
{{end}
`
类型tp结构{
标题字符串
Body[]字符串
}
func Read()([]字符串){
a:=[]字符串{“苹果”、“橘子”、“梨”}
归还
}
func main(){
as:=tp{Title:“Hello”,Body:Read()}
t:=template.Must(template.New(“Tele”).Parse(titlepage))
t、 执行(os.Stdout,as)
}
奇怪的是,这在操场上有效,但在我的实际代码中却不起作用。@user3918985这可能是因为您正在web浏览器中查看HTML。HTML中的换行符与空格处理相同。您可能想插入一个
元素而不是换行符。奇怪的是,这在Playerd上有效,但在我的实际代码上却不起作用。@user3918985这可能是因为您正在web浏览器中查看HTML。HTML中的换行符与空格处理相同。您可能希望插入一个
元素,而不是换行符。
<html>
<h1>Hello</h1>
<h1>appleorangepear</h1>
</html>
const titlepage = `
<html>
<h1>{{ .Title}}</h1>
<h1>{{ range $i := .Body}}{{$i}}<br/>
{{end}}</h1>
</html>
`
type tp struct {
Title string
Body []string
}
func Read() ([]string) {
a := []string{"apple", "orange", "pear"}
return a
}
func main() {
as := tp{Title: "Hello", Body: Read()}
t := template.Must(template.New("Tele").Parse(titlepage))
t.Execute(os.Stdout, as)
}