猿问

golang - 如何在模板中拆分字符串

我尝试使用 template.FuncMap 但有恐慌错误


panic: runtime error: invalid memory address or nil pointer dereference

代码:


type Article struct{

    Id int

    Title string

    Tags  string

}


var (

    tplFuncMap template.FuncMap 

)


func main() {

    article := &Article{Id:1, Title:"hello world", Tags:"golang,javascript"}

    tplFuncMap =  make(template.FuncMap)

    tplFuncMap["Split"] = Split

    tpl, _ := template.ParseFiles("a.html", "b.html")

    tpl = tpl.Funcs(tplFuncMap)

    tpl.Execute(os.Stdout, article)

}


func Split(s string, d string) []string {

    arr := strings.Split(s, d)

    return arr

}

一个.html


//i want to split tags and range

{{$arr := Split .Tags ","}}

{{range $k, $v := $arr}}

    <a href="{{$v}}">{{$v}}</a>

{{end}}


慕标5832272
浏览 307回答 1
1回答
随时随地看视频慕课网APP

相关分类

Go
我要回答