猿问

文本/模板:“不能以 0 个结果调用方法/函数。”

如何在不返回值的模板中执行函数?这是示例:


func main() {

    u, err := url.Parse("http://example.com/test?param1=true&param2=true")

    if err != nil {

        log.Fatal(err)

    }

    m := u.Query()

    m.Del("param1") // param1 successful deleted!

    u.RawQuery = m.Encode()

    fmt.Println(u.RawQuery)


    const tmpl = `

    {{$m := .Query}}

    {{$m.Del "param2"}} <!-- failed to delete param2! -->

    {{.RawQuery}}

    `

    t := template.Must(template.New("").Parse(tmpl))

    err = t.Execute(os.Stdout, u)

    if err != nil {

        log.Println("executing template:", err)

    }


}


我知道在模板中不应该有太多的逻辑,但是在我看来,对运行不返回值的函数的无知似乎是个有趣的问题。


收到一只叮咚
浏览 167回答 1
1回答
随时随地看视频慕课网APP

相关分类

Go
我要回答