Go は、text/template と html/template の 2 つのテンプレート パッケージを提供します。 html/template パッケージは、text/template とインターフェイスを共有しながら、コード インジェクションに対して安全に HTML 出力を生成することに重点を置いています。したがって、テンプレート処理の基本は主に text/template パッケージに文書化されています。
パイプラインについて
パイプラインとは、テンプレート内の値評価のシーケンスを指します。これらは、パイプ文字「|」で区切られたコマンドで構成されます。各コマンドは値、引数付きの関数またはメソッド呼び出し、またはチェーンの最後に配置される場合は引数のないメソッドにすることができます。各コマンドの結果は、最後の引数として次のコマンドに渡され、最後のコマンドの出力はパイプラインの値を表します。
ドット (.) 記号
ドット。は、テンプレートに渡されるデータ構造内の現在の位置を指すカーソルです。最初はテンプレートに渡される値を指しますが、{{range}} や {{with}} などのアクションで変更できます。
テンプレートで .Name を使用する場合、Name フィールドまたは現在ドットが指している値のメソッド。値が構造体の場合、.Name はテンプレートの先頭にある対応するフィールドまたはメソッドにアクセスします。
テンプレート インクルード内のパイプライン
{{template を使用する場合}} では、現在のドット値を付属のテンプレートに渡すパイプラインを指定します。パイプラインとして渡される値は、呼び出されたテンプレート内のドットになります。
$ を使用して元のデータにアクセスする
ドットはテンプレートの処理中に変更される可能性があるため、$ 記号はテンプレートの実行に渡される元の値にアクセスするために提供されます。これにより、深くネストされたテンプレート呼び出し内であっても、元の値の任意の部分に到達できます。
以上がGo のテンプレート エンジンでパイプラインはどのように機能しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。