Golang 页面模板之模板中如何插入数据,输出嵌套字段内容?以及神奇的减号“-”,如何去掉Go Template生成的标签换行符

Golang 页面模板之模板中如何插入数据,输出嵌套字段内容?以及神奇的减号“-”,如何去掉Go Template生成的标签换行符,第1张

概述/root/code/go/src/contoso.org/hello/index.html <!DOCTYPE html> <html> <head>     <title>模板中如何插入数据?</title>       <meta http-equiv="Content-Type" content="text/html" charset="utf-8">     <meta name="ke


/root/code/go/src/contoso.org/hello/index.HTML

<!DOCTYPE HTML>
<HTML>
<head>
<Title>模板中如何插入数据?</Title>
<Meta http-equiv="Content-Type" content="text/HTML" charset="utf-8">
<Meta name="keywords" content="关键词1,关键词2">
<Meta name="description" content="">
<style>
span {display:block;wIDth:100px;float:@R_301_6823@;}
</style>
</head>
<body>
<div>
<h3>输出嵌套字段内容</h3>
<p><b>{{.Username}}</b><p>
<ul>
{{range .Emails}}
<li>{{.}}</li>
{{end}}
</ul>
<ul>
{{with .FrIEnds}}
{{range .}}
<li><span>{{.Fname}}</span><span>{{.Age}}</span><span>{{.Mobile}}</span></li>
{{end}}
{{end}}
</ul>
</div>
</body>
</HTML>

/root/code/go/src/contoso.org/hello/main.go

package main

import (
"HTML/template"
"net/http"
)

type FrIEnd struct {
Fname string
Age int
Mobile string
}

type Person struct {
Username string
Emails []string
FrIEnds []*FrIEnd
}

func main() {
http.HandleFunc("/",load)
http.ListenAndServe(":9090",nil)
}

func load(w http.ResponseWriter,r *http.Request) {
tim := FrIEnd{Fname: "Tim",Age: 25,Mobile: "13620052000"}
jack := FrIEnd{Fname: "Jack",Age: 28,Mobile: "13520172000"}
tom := FrIEnd{Fname: "Tom",Age: 19,Mobile: "13512345000"}
p := Person{Username: "Jason",
Emails: []string{"[email protected]","[email protected]"},
FrIEnds: []*FrIEnd{&tim,&jack,&tom}}
t,_ := template.Parsefiles("index.HTML")
t.Execute(w,p)
}


模板格式处理如下,注意这个神奇的“-”符号,它的位置可以写在花括号内部的前后:

<!DOCTYPE HTML>
<HTML>
<head>
<Title>模板中如何插入数据?</Title>
<Meta http-equiv="Content-Type" content="text/HTML" charset="utf-8">
<Meta name="keywords" content="关键词1,关键词2">
<Meta name="description" content="">
<style>
span {display:block;wIDth:100px;float:@R_301_6823@;}
</style>
</head>
<body>
<div>
<h3>输出嵌套字段内容</h3>
<p><b>{{.Username}}</b><p>
<ul>
{{range .Emails -}}
<li>{{.}}</li>
{{- end}}
</ul>
<ul>
{{with .FrIEnds -}}
{{range . -}}

<li><span>{{.Fname}}</span><span>{{.Age}}</span><span>{{.Mobile}}</span></li>
{{- end}}
{{- end}}

</ul>
</div>
</body>
</HTML>

神奇的减号“-”,去掉Go Template生成的标签换行符:

<!DOCTYPE HTML>
<HTML>
<head>
<Title>模板中如何插入数据?</Title>
<Meta http-equiv="Content-Type" content="text/HTML" charset="utf-8">
<Meta name="keywords" content="关键词1,关键词2">
<Meta name="description" content="">
<style>
span {display:block;wIDth:100px;float:@R_301_6823@;}
</style>
</head>
<body>
<div>
<h3>输出嵌套字段内容</h3>
<p><b>{{.Username}}</b><p>
<ul>
{{- range .Emails}}
<li>{{.}}</li>
{{- end}}
</ul>
<ul>
{{- with .FrIEnds}}
{{- range .}}
<li><span>{{.Fname}}</span><span>{{.Age}}</span><span>{{.Mobile}}</span></li>
{{- end}}
{{- end}}
</ul>
</div>
</body>

</HTML>

总结

以上是内存溢出为你收集整理的Golang 页面模板之模板中如何插入数据,输出嵌套字段内容?以及神奇的减号“-”,如何去掉Go Template生成的标签换行符全部内容,希望文章能够帮你解决Golang 页面模板之模板中如何插入数据,输出嵌套字段内容?以及神奇的减号“-”,如何去掉Go Template生成的标签换行符所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1276592.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存