問題は、 にリストされている最初のサンプル プログラムtext/template
が定型書簡を作成するということです。
.Gift
文字は範囲で解析されますが、なぜ
{{with .Gift}} ..... {{.}} {{end}}
.Name
と.Attended
直接言われました。なんで?
問題は、 にリストされている最初のサンプル プログラムtext/template
が定型書簡を作成するということです。
.Gift
文字は範囲で解析されますが、なぜ
{{with .Gift}} ..... {{.}} {{end}}
.Name
と.Attended
直接言われました。なんで?
Gift
はオプションであるため、Gift
提供されていない場合は、手紙の中で何も感謝したくありません。が提供されている場合Gift
は、贈り物に感謝したいと思います。
{{with}}
アクションは、渡されたパイプラインが空でない場合にのみ、条件付きで本体を実行します。
{{with pipeline}} T1 {{end}}
If the value of the pipeline is empty, no output is generated;
otherwise, dot is set to the value of the pipeline and T1 is
executed.
したがって、例には次のものが含まれます。
{{with .Gift -}}
Thank you for the lovely {{.}}.
{{end}}
これは、.Gift
が空でない場合、出力 (文字) に「ありがとう」の文を含めることを意味します。が空の場合.Gift
、「ありがとう」は省略されます。