次ゴーテンプレートプロセスを失敗し、動作します:ゴーテンプレートを再定義:時にはエラーなし
{{block "A" "hello"}}{{end}}
{{define "A"}}{{.}}{{end}}
私はドキュメントを読んで期待通りの出力が「こんにちは」、です。これとは対照的に、以下のテンプレートが解析されません。ここで
{{block "A" "hello"}}A{{end}}
{{define "A"}}{{.}}{{end}}
が、私は最初はそうではない
template: multiple definition of template "A"
はなぜ2番目のテンプレートがエラーを与えないエラーメッセージが表示されますか?この違いは意図されていますか?
完全なコードはここにある:答えはhtml/template.Parse()
のドキュメントにあるhttps://play.golang.org/p/CNAqllVLjB
html /テンプレートのドキュメントを参照していただきありがとうございます。私はまだ何かが欠けています:文書中の '{{block}}'の例は空でないテンプレートを別のものに置き換えます。コードはhttps://play.golang.org/p/cPuVy7im5Jです。これがうまくいくとすれば、テキストは "Parse()' * "などの呼び出しで定義された*と同じ名前の空でないテンプレートを置き換えるでしょうか? – jochen
@jochenはい、そうですが、ドキュメントはここで少し誤解を招くことがあります。しかし、ちょっと、博士は 'Parse()'の1回の呼び出しについて説明しています(最後の括弧で囲まれた部分はわかりませんが、私にとっては間違っています)。 – icza