Go テンプレートの「with」または「range」スコープ内の外部スコープ変数にアクセスする方法?

DDD
リリース: 2024-11-13 15:52:03
オリジナル
673 人が閲覧しました

How to Access Outer Scope Variables in Go Templates Within

「with」または「range」スコープ内のテンプレートの外部スコープへのアクセス

「with」または「range」スコープを使用する場合Go テンプレート内では、ドット (.) 演算子のスコープが現在のループ変数または構造体メンバーに変更されます。このため、外部スコープで定義された変数や関数にアクセスすることが困難になる可能性があります。

この問題に対処するために、Go テンプレートは、外部スコープへのアクセスを提供する "$" という名前の特別な変数を提供します。使用方法は次のとおりです:

{{with .Inner}}
  Outer: {{$.OuterValue}}  # Accesses the OuterValue variable from the outer scope
  Inner: {{.InnerValue}}  # Accesses the InnerValue variable from the inner scope
{{end}}
ログイン後にコピー

「$」変数はテキスト/テン​​プレートのドキュメントに記載されています:

「実行が開始されると、$ は Execute に渡されるデータ引数に設定されます」つまり、ドットの開始値です。

これは、「$」が常にテンプレートに渡された元のデータ オブジェクトを指しており、次のデータ オブジェクトにアクセスできることを意味します。外側のスコープで定義された変数と関数。

以上がGo テンプレートの「with」または「range」スコープ内の外部スコープ変数にアクセスする方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート