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

网站建设合同书 简易附近电脑培训学校

网站建设合同书 简易,附近电脑培训学校,在线做爰视频网站,jp域名Go语言模板语法 文章目录 center Go语言模板语法连接前后端的符号: {{}}注释管道(pipeline)变量条件判断range 关键字with 关键字比较函数自定义函数嵌套模板模板继承 连接前后端的符号: {{}} 模板语法都包含在{{}}之中,其中{{.}}中的.表示当前对象.在传入一个结构体对… Go语言模板语法 文章目录 center Go语言模板语法连接前后端的符号: {{}}注释管道(pipeline)变量条件判断range 关键字with 关键字比较函数自定义函数嵌套模板模板继承 连接前后端的符号: {{}} 模板语法都包含在{{}}之中,其中{{.}}中的.表示当前对象.在传入一个结构体对象时,可以根据.来访问结构体的对应字段.如果是复合类型数据,则可以通过{{.FiledName}}来访问它的字段,FiledName是指对应go代码中的结构体变量名 伪代码例子: //在html文档中 bodypHello {{.Name}}/ppGender {{.Gemder}}/p pAge {{.Age}}/p /body//在Go代码中 type UserInfo struct{Name stringGender stringAge int } user : UserInfo{Name:李四,Gender: 未知,Age: 24, }这样后端数据就传输到前端显示了 注释 语法: {{/*注释内容*/}}作用: 和其他语言的注释一致,目的是提升代码的可阅读性注意: 可以进行多行注释,但是不可以嵌套注释,并且必须紧贴分界符始止 管道(pipeline) 介绍: 管道是指产生数据的操作,比如{{.}} , {{.Name}}“等,Go语言模板语法中支持使用管道符号”|链接多个指令,用法和UNIX下的管道类似,所以说管道就像一种概念,知道就行了 变量 介绍: 在Action里可以初始化一个变量来捕获管道的执行结果 Action: 在Web开发中Action通常指代处理HTTP请求的处理程序或函数。当用户在网页上执行某个操作例如点击按钮、提交表单时相应的Action会被调用来处理请求并执行相应的逻辑操作。 语法:$variable : pipeline特点: 声明变量的Action不会产生任何输出,大概意思是仅仅声明该变量而没有对其进行赋值或使用时程序的输出不会显示该变量的值或其他信息。只有在对变量进行赋值并在程序中使用时才能在输出中看到相关的内容。 条件判断 语法: {{if pipeline}} T1 {{end}}{{if pipeline}} T1 {{else}} T0 {{end}}{{if pipeline}} T1 {{else if pipeline}} T0 {{end}} range 关键字 在Go中使用range关键字,pipeline的值必须是数组,切片,字典或者通道.语法: {{range pipeline}} T1 {{end}}{{range pipeline}} T1 {{else}} T0 {{end}} with 关键字 with关键字和if关键字有点类似,{{with}}操作仅在传递的管道不为空时有条件地执行其主体语法: {{with pipeline}} T1 {{end}}{{with pipeline}} T1 {{else}} T0 {{end}} 比较函数 符号作用eqne!ltlegtge 特点: 只有eq符号可以接收多个参数,它会将第一个参数和其余参数一次比较例子: {{eq arg1 arg2 arg3}} arg1 arg2||arg1 arg3 自定义函数 在嵌套模板中存在预定义函数(官方已经定义好的)和自定义函数(自己定义的),自定义函数使得模板更加灵活. 自定义函数通过调用Funcs()方法实现 Funcs()方法定义: func (t *Template) Funcs(funcMap FuncMap) *TemplateFuncMapd定义:type FuncMap map[string]interface{} 定义步骤: 1.先到后端代码中定义一个函数: (匿名函数为例) hello : func() (string){return Hello! }2.调用Funcs()方法 注意: 调用Funcs()方法,需要在解析模板前调用,也就是在Parse()方法前 bytes,err : ioutil.ReadFile(文件名/文件路径) templl,err : template.New(为模板命名(尽量和文件名字一致)).Funcs(template.FuncMap{hello:hello}).Parse(string(bytes))在模板中调用函数: {{hello}}这里的hello是指定FuncMap中的key,也就是上面的hello 嵌套模板 介绍: 嵌套模板也就是,在一个html文件中使用多个模板,被嵌套的模板可以是一个单独的html文件,还可以利用define关键字在该模板下定义一个模板 define语法: {{define “name”}} T(内容) {{end}} 通过template关键字来执行模板 语法: {{template name}}{{template name pipeline}} 例子:(模板代码)Demo.html htmlbodyh1{{template title.html}}/h1div{{template content.html}}/div/body /html {{/*define 的定义写在html标签之下*/}} {{define content.html}}li小明/lili小红/li {{end}}title.html文件定义 ulil你好/il /ul后端代码(主要): tmpl,err :template.ParseFiles(Demo.html路径,title.html路径)在解析代码的时候,需要将包含其他模板的文件写在第一位,其余的可随意顺序 相关类似代码: hello.html文件 p大家好,我是小黑子/pSever.html文件 !DOCTYPE html html langen headmeta charsetUTF-8title嵌套模板/title /head body{{/*自定义函数加模板嵌套*/}}h1{{Hello}}/h1hrh2{{template hello.html}}/h2p{{.}}真帅!/phr{{template come.html}} /body /html {{define come.html}} ulli唱/lili跳/lilirap/lili篮球/li /ul {{end}}后端代码: package mainimport (html/templatelognet/http )func main() {http.HandleFunc(/, hello)http.ListenAndServe(:9000, nil) }func hello(w http.ResponseWriter, r *http.Request) {//定义模板//解析模板,自定义函数Hello : func() string {return --- 欢迎来到我的舞台 ---}tmpl, err : template.New(Sever.html).Funcs(template.FuncMap{Hello: Hello}).ParseFiles(src\\使用html和template包\\Go语言模板语法\\嵌套模板\\Sever.html,src\\使用html和template包\\Go语言模板语法\\嵌套模板\\hello.html)if err ! nil {log.Println(解析模板失败!)return}name : 贤哥//渲染模板err tmpl.Execute(w, name)if err ! nil {log.Println(渲染模板失败!:, err)} } 这里包含了 对自定义函数,嵌套模板,以及传值的使用 模板继承 介绍: 模板继承是指对各种类似的固定板块的复用,例如说很多时候我们的开发网站的时候,其实不同的网页很多的地方都是类似的,所以说利用模板继承可以复用模板,减少工作量,代码也更加简洁 关键字block 语法:{{block name pipeline}} T {{end}} 需要继承的模板,需要先继承根模板,然后再利用define关键字定义内容 例子 base.tmp文件 !DOCTYPE html html langen headmeta charsetUTF-8title模板继承/title /head style*{background-color:white;} /style body h1 stylecolor:red模板继承/h1 hr h2 stylecolor:blue变化的内容:/h2 div{{block context .}}p会发生变化的地方/pdiva hrefhttp://localhost:9000/indexIndex页面/abra hrefhttp://localhost:9000/homeHome页面/a/div{{end}}/div /body /html其中涉及一点点的css内容,不影响阅读 index.tmpl文件 {{/*继承根模板*/}} {{template base.tmpl .}} {{/*定义块模板*/}} {{define context}} h2Index页面/h2 pHello,{{.}}/p a hrefhttp://localhost:9000Base页面/a {{end}}先是继承然后定义内容,其中{{template base.tmpl .}}的 . “指传入的值,而pHello,{{.}}/p的” . 接收该值还有这里define后面的文件名,一定要与block时定义的名字一致 home.tmpl文件 {{/*继承根模板*/}} {{template base.tmpl .}} {{/*定义块模板*/}} {{define context}}h2Home页面/h2pHello,{{.}}/pa hrefhttp://localhost:9000Base页面/a {{end}}和上面的基本一致 后端代码 package mainimport (html/templatelognet/http )func main() {http.HandleFunc(/, base)http.HandleFunc(/index, index)http.HandleFunc(/home, home)err : http.ListenAndServe(:9000, nil)if err ! nil {log.Println(err)return} }func base(w http.ResponseWriter, r *http.Request) {//定义模板//解析模板t, err : template.New(base.tmpl).ParseFiles(src\\使用html和template包\\Go语言模板语法\\模板继承\\base.tmpl)if err ! nil {log.Println(解析失败:, err)return}//渲染模板err t.Execute(w, nil)if err ! nil {log.Println(渲染失败:, err)return} }func index(w http.ResponseWriter, r *http.Request) {//定义模板//解析模板(涉及嵌套模板)t, err : template.New(base.tmpl).ParseFiles(src\\使用html和template包\\Go语言模板语法\\模板继承\\base.tmpl,src\\使用html和template包\\Go语言模板语法\\模板继承\\index.tmpl)if err ! nil {log.Println(解析失败:, err)return}name : 贤哥!//渲染模板err t.ExecuteTemplate(w, index.tmpl, name)if err ! nil {log.Println(渲染失败:, err)return} } func home(w http.ResponseWriter, r *http.Request) {//定义模板//解析模板t, err : template.New(base.tmpl).ParseFiles(src\\使用html和template包\\Go语言模板语法\\模板继承\\base.tmpl,src\\使用html和template包\\Go语言模板语法\\模板继承\\home.tmpl)if err ! nil {log.Println(解析失败:, err)return}name : 振哥!//渲染模板err t.ExecuteTemplate(w, home.tmpl, name)if err ! nil {log.Println(渲染失败:, err)return} }
http://www.hkea.cn/news/14529305/

相关文章:

  • 苏州做网站公司有哪些劳务派遣做网站的好处
  • 公司网站制作的费用申请怎样创建旅游网站
  • 在线看mv视频网站入口软件下载做免费嗳暧视频网站
  • 昭阳区建设局网站哈尔滨做网站搭建的
  • php公司网站系统在哪里申请网站
  • wordpress登录和没登录菜单百度移动端关键词优化
  • 建立一个购物网站连云港新站优化
  • 自己开发一个网站应该怎么做成都双语网站开发
  • 北京常用网站手机网页图片显示不出来
  • 网站建设平台一般多少钱118论坛网址之家
  • 企业门户网站需求文档企业网站建设市场报价
  • 大公司做网站网站怎么去维护
  • 网站开发工程师公司设计学类包括哪些专业
  • 网站开发前端就业前景wordpress模版做网页
  • 如何做网站数据库备份查公司名称是否已经被注册
  • 织梦网站模板源码php惠安规划局建设局网站
  • 网站报价预算书中山软件开发公司
  • wordpress title怎么设置广州网站优化关键词方法
  • 网站策划的流程聊城 网站建设
  • 怎样吧自己做的网站发布成都优化网站源头厂家
  • 做著名建筑物网站简介wordpress 可视化插件
  • 做网站跟app需要多少钱网站开发与rest
  • 2018年网站开发技术广东省白云区属于哪个市
  • 网站建设方投资成本门户网站建设存在问题与不足
  • seo排名网站 优帮云外贸营销员国家职业技能标准
  • 建设自己的二手房中介网站磁力天堂最新版地址
  • 如何在网站做404页面番禺做网站要多少钱
  • 网站推广120种方法请问番禺哪里有做网站的
  • 网站标签设置丹阳房价
  • 网站全站出售免费发布项目信息的平台