gpt4 book ai didi

Go:使用 html/template 在新行上打印 slice 中的每个元素

转载 作者:IT王子 更新时间:2023-10-29 02:34:28 26 4
gpt4 key购买 nike

如何在新行上打印“apple”、“orange”和“pear”?

开始:

const titlepage = `
<html>
<h1>{{ .Title}}</h1>
<h1>{{ range $i := .Body}}{{$i}}{{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)
}

当前输出:

<html>
<h1>Hello</h1>
<h1>appleorangepear</h1>
</html>

Go Playground 上的代码:http://play.golang.org/p/yhyfcq--MM

最佳答案

模板中的换行符将被复制到结果中。如果你想在 {{$i}} 之后换行,你只需要添加一个。

编辑:如果你想让换行符出现在网络浏览器中,你需要使用像<br/>这样的HTML元素。 ,或将您的元素放入 <li> (列表)。我添加了一个 <br/>到代码。

http://play.golang.org/p/1G0CIfhb8a

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)
}

关于Go:使用 html/template 在新行上打印 slice 中的每个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25330985/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com