防止&#34; <无价值=“”>&#34;由golang文本/模板库

时间:2018-04-20 03:49:46

标签: go go-templates

将地点<no value>作为模板扩展的结果 当没有特定模板参数的值时。

有什么方法可以阻止这种情况吗? 我现在能想到的就是插入一个空的版本&#34; AppVersion&#34; 进入数据地图

e.g。

package main

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

func main() {
    data := make(map[string]string)
    //data["AppVersion"] = "Octane_3.0"

    text := "APP_VERSION={{.AppVersion}}"
    tmpl, err := template.New("").Parse(text)
    if err != nil {
        log.Fatal(err)
    }

    var b bytes.Buffer
    err = tmpl.Execute(&b, data)
    if err != nil {
        fmt.Println("template.Execute failed", err)
    }

    fmt.Println("Template text:", text)
    fmt.Println("Expanded:", b.String())
}

https://play.golang.org/p/OuLhcHOCsWJ

1 个答案:

答案 0 :(得分:2)

哎呀,如果有兴趣的话我会找到答案我会留下问题&amp;回答。

tmpl, err := template.New("").Option("missingkey=zero").Parse(text)