【发布时间】:2018-01-11 07:20:12
【问题描述】:
目前我遇到了一个与将 Golang 变量分配给 Javascript 变量相关的问题。我正在使用 Golang 模板,所以,我从后端发送了一个 JSON 变量,就像这样:
var c []models.C
b, _ := json.Marshal(c)
err = tpl.ExecuteTemplate(w, "index.gohtml",string(b))
如您所见,我有一个切片,将其转换为 Json,然后将该 Json 转换为字符串,然后将其发送到模板。然后,在前端我需要将它分配给一个变量,它应该是有效的 JSON,我有这个:
var rowData = {{.}};
但是,我收到了SyntaxError: expected property name, got '{'
所以,我的问题是:我应该如何分配那个 JSON?
【问题讨论】:
-
我不确定你想要达到什么目标,但是这个
{{.}}看起来不像 JSON -> jsonlint.com -
请展示完整的例子。 “SyntaxError:预期的属性名称”不是 Go 错误。你的模板的输出是什么?这是文本模板吗?为什么不只是
fmt.Sprintf("var rowData = %s;", b)? -
@Edwin with {{.}} 我在前端打印 Golang 变量。 {{.}} 这不是值,它是访问变量的一种方式
-
@JimB 我同意,这是一个 Javascript 问题,因为我正在尝试将 Go 变量(它是一个字符串,但 JSON 有效)分配给 JS 变量
-
@SrednyMCasanova 没有显示使用位置的代码,很难判断这是在模板中使用还是只是在模板的输出中使用。
标签: javascript json go go-templates