我试图弄清楚如何在反引号字符串文字中进行插值。


myVar := "this is my var"
var jsonStr = []byte(`{
  "attachments": [
        {
            "text": "Hello World! {{myVar}}"

        }
    ]
}`)
{{myVar}}这只是伪造的代码,可以传达我的意图,但是我该如何在golang中做到这一点?

最佳答案

您可以使用模板:

import (
    "fmt"
    "bytes"
    "text/template"
)


func main() {
  myVar := "this is my var"
  var jsonStr = `{
  "attachments": [
        {
            "text": "Hello World! {{.myVar}}"

        }
    ]
}`
 t,_:=template.New("text").Parse(jsonStr)
 out:=bytes.Buffer{}
 t.Execute(&out,map[string]interface{}{"myVar":myVar})
}

关于go - 在反引号字符串中添加字符串插值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58686609/

10-15 00:21