Go テンプレートと複数行の文字列インデント

WBOY
リリース: 2024-02-09 22:09:14
転載
445 人が閲覧しました

Go 模板和多行字符串缩进

php エディタ Zimo は、Go 言語のテンプレートと複数行の文字列インデントを紹介します。 Go 言語におけるテンプレートは、テキスト出力の生成を容易にするツールであり、指定されたテンプレートに変数を挿入し、最終的な出力結果を生成できます。同時に、複数行の文字列インデントはコードを読みやすくするための手法であり、コードが複数行で表示される場合でも一貫したインデント スタイルを維持できるため、コードの可読性と保守性が向上します。この記事では、Go 言語でのテンプレートの使用方法と、実際の開発でより適切に適用できるようにするための複数行文字列のインデントのテクニックを詳しく紹介します。

質問内容

そこで、text/templateパッケージとテンプレート値(複数行の文字列)を使ってyamlファイルを生成してみました。私が抱えている問題は、テンプレート文字列のインデントが tpl のテンプレート変数と同じレベルにないことです。

これは (少し不自然な例):

リーリー

プレイグラウンド: https://goplay.space/#2ek7_elztwa

ここで見たい出力は明らかに

です。 リーリー ### の代わりに ### リーリー

これを回避できる魔法のプレフィックスはありますか?

回避策

次のコードを使用して要件を満たすことができました。袋詰めした枝を使いました。あなたの目標を簡単に達成できる機能を提供します。コードは以下のように表示されます:

リーリー

funcs

メソッドを使用して関数をテンプレート エンジンに渡します。これらの関数は、spig.funcmap() への呼び出しから返されます。 この関数は

parse

の前に呼び出す必要があることに注意してください。そうしないと混乱が発生します。 次に、コメント

| indent 2

を追加して、行を 2 文字インデントします。コードを実行すると、目的の出力が得られます。 利用可能な機能の完全なリストは、

ここ

にあります。 これで問題が解決したかどうかお知らせください。ありがとうございます。

以上がGo テンプレートと複数行の文字列インデントの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:stackoverflow.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!