当前位置: 首页 > wzjs >正文

网站如何带来流量宁波互联网企业

网站如何带来流量,宁波互联网企业,做网站挣钱不,怎么做新的网站更多个人笔记见: github个人笔记仓库 gitee 个人笔记仓库 个人学习,学习过程中还会不断补充~ (后续会更新在github上) 文章目录 Template 模板基本示例语法1. 基本输出语法2. 控制结构3. 空白字符控制4. Must函数 Temp…

更多个人笔记见:
github个人笔记仓库
gitee 个人笔记仓库
个人学习,学习过程中还会不断补充~ (后续会更新在github上)

文章目录

  • Template 模板
    • 基本示例
    • 语法
      • 1. 基本输出语法
      • 2. 控制结构
      • 3. 空白字符控制
      • 4. Must函数

Template 模板

基本示例

package mainimport ("fmt""html/template""os"
)// 定义数据结构
type Person struct {Name    stringAge     intEmail   stringIsAdmin bool
}type Company struct {Name      stringEmployees []PersonFounded   int
}func main() {// 示例1:基本语法演示basicTemplateDemo()// 示例2:条件判断和循环conditionalAndLoopDemo()// 示例3:HTML模板htmlTemplateDemo()// 示例4:Must的使用mustTemplateDemo()
}// 基本语法演示
func basicTemplateDemo() {fmt.Println("=== 基本语法演示 ===")// {{.}} 表示当前数据对象tmpl1 := `Hello {{.}}!`t1 := template.Must(template.New("basic").Parse(tmpl1))t1.Execute(os.Stdout, "World")fmt.Println()// {{.Name}} 访问结构体字段person := Person{Name: "张三", Age: 30, Email: "zhangsan@example.com"}tmpl2 := `姓名: {{.Name}}, 年龄: {{.Age}}, 邮箱: {{.Email}}`t2 := template.Must(template.New("person").Parse(tmpl2)) //person 是模板名字t2.Execute(os.Stdout, person)   //对应的结构体fmt.Println("\n")
}// 条件判断和循环演示
func conditionalAndLoopDemo() {fmt.Println("=== 条件判断和循环演示 ===")company := Company{Name:    "科技公司",Founded: 2020,Employees: []Person{{Name: "李四", Age: 25, Email: "lisi@example.com", IsAdmin: true},{Name: "王五", Age: 28, Email: "wangwu@example.com", IsAdmin: false},{Name: "赵六", Age: 32, Email: "zhaoliu@example.com", IsAdmin: false},},}// 使用 {{range .}} 循环和 {{if}} 条件判断// {{- 和 -}} 用于去除空白字符tmpl := `公司: {{.Name}} (成立于 {{.Founded}}年)员工列表:{{- range .Employees}}- 姓名: {{.Name}}{{- if .IsAdmin}} (管理员){{else}} (普通员工){{end}} 年龄: {{.Age}}, 邮箱: {{.Email}}{{- end}}`//通过IsAdmin 进行判断是否是管理员t := template.Must(template.New("company").Parse(tmpl))t.Execute(os.Stdout, company) //传入的 company 是一个大结构体,里面包括 Employees 列表fmt.Println()
}// HTML模板演示
func htmlTemplateDemo() {fmt.Println("=== HTML模板演示 ===")// HTML模板会自动转义特殊字符htmlTmpl := `
<!DOCTYPE html>
<html>
<head><title>{{.Name}} - 员工列表</title>
</head>
<body><h1>{{.Name}}</h1><p>成立年份: {{.Founded}}</p><h2>员工信息</h2><table border="1"><tr><th>姓名</th><th>年龄</th><th>邮箱</th><th>角色</th></tr>{{- range .Employees}}<tr><td>{{.Name}}</td><td>{{.Age}}</td><td>{{.Email}}</td><td>{{- if .IsAdmin -}}<span style="color: red;">管理员</span>{{- else -}}普通员工{{- end -}}</td></tr>{{- end}}</table>
</body>
</html>
`company := Company{Name:    "示例科技公司",Founded: 2020,Employees: []Person{{Name: "张三", Age: 30, IsAdmin: true},{Name: "李四", Age: 25, IsAdmin: false},},}// 创建HTML文件file, err := os.Create("company.html")  //创建接收的文件if err != nil {panic(err)}defer file.Close()t := template.Must(template.New("html").Parse(htmlTmpl))t.Execute(file, company)  //这里不是 os.stdout输出了,而是输出到了文件中fmt.Println("HTML文件已生成: company.html")
}// Must的使用演示
func mustTemplateDemo() {fmt.Println("=== Must使用演示 ===")// Must会在模板解析失败时直接panic// 这是一个正确的模板validTemplate := `Hello {{.Name}}!`t1 := template.Must(template.New("valid").Parse(validTemplate))person := Person{Name: "测试用户"}fmt.Print("正确模板输出: ")t1.Execute(os.Stdout, person)fmt.Println()// 演示错误处理(注释掉以避免程序崩溃)/*// 这是一个错误的模板语法,Must会直接panicinvalidTemplate := `Hello {{.Name!` // 缺少右括号t2 := template.Must(template.New("invalid").Parse(invalidTemplate))*/// 不使用Must的错误处理方式invalidTemplate := `Hello {{.Name!`  //这里缺少了右边括号    t2, err := template.New("invalid").Parse(invalidTemplate) //没有用 Must,用 Must 会 panic 导致程序退出if err != nil {fmt.Printf("模板解析错误: %v\n", err)} else {t2.Execute(os.Stdout, person)}
}

语法

1. 基本输出语法

  • {{.}}: 输出当前数据对象
  • {{.Name}}: 输出结构体的Name字段
  • {{.Field.SubField}}: 访问嵌套字段

2. 控制结构

  • {{if .IsAdmin}}...{{else}}...{{end}}: 条件判断
  • {{range .Employees}}...{{end}}: 循环遍历
  • {{with .Field}}...{{end}}: 设置上下文

3. 空白字符控制

  • {{-: 去除左侧空白字符
  • -}}: 去除右侧空白字符
  • {{- if .IsAdmin -}}: 去除两侧空白字符

4. Must函数

  • template.Must(): 在模板解析失败时直接panic
  • 适用于程序启动时的模板初始化
  • 类似于panic的检验机制
  • 如果需要接受错误就不要用 Must

文章转载自:

http://4V5SU0Yb.dbyLp.cn
http://K3WlZN2Z.dbyLp.cn
http://4uS32XZX.dbyLp.cn
http://y1wYWsJq.dbyLp.cn
http://VmQTXFXw.dbyLp.cn
http://pPkoOc9L.dbyLp.cn
http://JFgWvNSt.dbyLp.cn
http://FRepYR32.dbyLp.cn
http://hdL4dEsc.dbyLp.cn
http://58PUwwK1.dbyLp.cn
http://yrzMnw8B.dbyLp.cn
http://j60qvzav.dbyLp.cn
http://wqa0wTHI.dbyLp.cn
http://SrHhqYr9.dbyLp.cn
http://ERubOeOP.dbyLp.cn
http://kLgn3ZuY.dbyLp.cn
http://iOpx2SSy.dbyLp.cn
http://XOs2mCnp.dbyLp.cn
http://m08zA3wS.dbyLp.cn
http://fAULFMOg.dbyLp.cn
http://DsW0LGjd.dbyLp.cn
http://olS4Ln5Z.dbyLp.cn
http://yO77Y1oZ.dbyLp.cn
http://Be2OM9uZ.dbyLp.cn
http://8kEopCWw.dbyLp.cn
http://yP9IWNMz.dbyLp.cn
http://BgrnP9T8.dbyLp.cn
http://w54mjq0u.dbyLp.cn
http://WmSXjiCy.dbyLp.cn
http://CmosA4RU.dbyLp.cn
http://www.dtcms.com/wzjs/737707.html

相关文章:

  • 网站后台编辑技巧wordpress 朋友圈插件
  • php做直播类型的网站制作展示型网站公司哪家好
  • php网站集成支付宝接口网站建设的总结
  • 学校网站建设及管理制度做网站如何容易被百度抓取
  • 中国建设银行威海分行网站织梦可以做淘宝客网站吗
  • 网站推广途径和要点软文营销定义
  • 做网站的税率设计师必备网站
  • 深圳网站网页制作一个网站要怎么做的
  • 网页制作实践 做网站红河网页设计
  • 我的世界手机做图的网站手机怎样做网站图解
  • 大学生做网站主题鹿城网络公司
  • 炫酷的移动端网站设计塑胶东莞网站建设技术支持
  • 好看的界面设计网站做竞价优化
  • 手机网站 多html关于手机的网站有哪些内容吗
  • 网站页面统计代码徐州网站建设要多少钱
  • 手机上制作网站的软件seo网站推广教程
  • 新闻类网站怎么做wordpress能不买服务器
  • 网站运营是什么岗位怎么恶意点击对手竞价
  • 婚庆公司网站制作网站怎么弄
  • wordpress安装网站源码asp建设的网站
  • 济阳县做网站公司网站建设技术百科
  • 网站域名跳转是怎么做的湖南省建设厅向汉东
  • 外贸网站做开关行业的哪个好app下载安卓软件
  • 微信电影网站怎么做的家乡介绍网页设计
  • 自己做的网站上传公司英文网站
  • 电脑仓库管理软件宁波百度seo排名优化
  • 浪琴手表网站建设图网站建设策划包括哪些内容
  • 网站设置快捷方式哪里有做枪网站的
  • 湖北省建设厅网站上岗证查询淘客网站 wordpress
  • python做网站需要什么网站建设免费建站免费源代码