为了账号安全,请及时绑定邮箱和手机立即绑定

运行时错误:在带有模板的马提尼酒中无效的内存地址或空指针取消引用

运行时错误:在带有模板的马提尼酒中无效的内存地址或空指针取消引用

Go
婷婷同学_ 2021-08-16 18:55:02
这是我的代码:m.Get("/", func(r render.Render) string {    t := template.New("some template")    toto := "titi"    templateh := "<html>Hello world! {{ toto }} <form name='input' action='../first' method='post' ><input type='texte' name='toto'><input type='submit' value='Submit'></form></html>"    t, _ = t.Parse(templateh)    var doc bytes.Buffer    err := t.Execute(&doc, toto)    if err != nil {        fmt.Println("There was an error:", err)    }    s := doc.String()    fmt.Println(s)    return s})它返回一个运行时错误:无效的内存地址或零指针取消引用我不明白为什么...
查看完整描述

1 回答

?
千巷猫影

TA贡献1829条经验 获得超7个赞

电话

    t, _ = t.Parse(templateh)

返回 nil 和错误一个错误,指出函数“todo”未定义。模板 Execute 方法取消引用 nil 指针,导致恐慌。

你应该改变两件事:

  • 检查并处理从解析调用返回的错误。这是使用template.Must辅助函数的好地方。

  • 通过替换{{ todo }}来修复模板{{.}}


查看完整回答
反对 回复 2021-08-16
  • 1 回答
  • 0 关注
  • 211 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信