登录
首页 >  Golang >  Go问答

GoLang 在 HTML 模板中渲染 JSON 结果时遇到困难

来源:stackoverflow

时间:2024-02-21 22:45:23 199浏览 收藏

大家好,今天本人给大家带来文章《GoLang 在 HTML 模板中渲染 JSON 结果时遇到困难》,文中内容主要涉及到,如果你对Golang方面的知识点感兴趣,那就请各位朋友继续看下去吧~希望能真正帮到你们,谢谢!

问题内容

上下文

这是结构:

type reversewhoisresponse struct {
    domainscount int      `json:"domainscount"`
    domainslist  []string `json:"domainslist"`
}

完成所有需要完成的操作后,将通过以下方式提供服务:

c.html(200, "example.html", gin.h{
    "total":   reversewhoisresponse.domainscount,
    "list":    reversewhoisresponse.domainslist,
})

显示原始 json 的第一部分仅通过

  
     {{ .list}}
  

问题:

但是,现在我也尝试显示一个解析字段 - 这样我就可以在一个选项卡中查看原始 json,并在另一个选项卡中查看解析结果。这就是我尝试这样做的方式:

    {{range .domainslist }}
  • {{ .list }}
  • {{end}}

这是因为它返回一个 url 列表

eg

example1.com
example2.com
example3.com

我正在尝试解析它,以便它在屏幕上看起来不错,这样我就可以实际使用它。

目前,我没有收到任何错误 - 但我在选项卡中看到 raw json,但在 parsed 选项卡中没有看到任何内容,有什么想法发生了什么或我可以遵循的一些文档吗?


解决方案


@spencerconnaughton 概述了该问题。

我的问题是我滥用了范围。

而不是:

    {{range .domainslist }}
  • {{ .list }}
  • {{end}}

应该是:

    {{range .list }}
  • {{ . }}
  • {{end}}

您可以分享您用作输入的 json 吗?如果 {{.list}} 显示原始 json,则表明 reversewhoisresponse.domainslist 包含原始 json,这表明它未按您的预期进行解析。假设您的第二个模板代码块是已解析的选项卡,并且接收与原始 json 块相同的“total”和“list”参数,您确定它将传递 .domainslist 而不仅仅是 {.list} ?另外,在范围函数中,您的意思是使用 {{.}} 而不是 {{.list}} 吗?免责声明:我没有杜松子酒的经验,所以我对其中的一些内容进行了猜测。 :)

终于介绍完啦!小伙伴们,这篇关于《GoLang 在 HTML 模板中渲染 JSON 结果时遇到困难》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布Golang相关知识,快来关注吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>