問題タブ [asp.net-mvc-layout]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net - コードの繰り返しを避けるために、PartialView の or 要素にコードを配置するにはどうすればよいですか?
<script>
すべてのビューのタグの形式と形状でデータベースから統計情報を取得しています。一部は に<head>
、その他は に配置され<body>
ます。
この情報の一部は、Google アナリティクスなどのすべてのビューで共有されますが、注文確認ビューでのみ利用可能な注文の詳細など、特定のビューのみに固有の情報もあります。
最終結果は次のようになります。
レイアウトで名前付きセクションを使用して、目的を達成しています。
サンプル ビュー コードは次のとおりです。
すべてのビュー モデルは Scripts フィールドを持つ基本クラスから継承されており、上で貼り付けたコードがすべてのビューに複製されており、これが問題です。
</body>
レイアウトのすぐ下にあるこの行から始めて、コードを PartialView に移動しようとしました。
@{Html.RenderAction("Index", "Scripts");}
そして、私の ScriptsController で:
すべてが機能し、モデルは正しく読み込まれ、スクリプトの部分ビューで使用できますが、残念ながら部分ビュー@section
で呼び出すことができないため、<script>
タグは表示されません。
すべてのビューで使用される 1 つの共通の場所にある回避策と@if ((Model.Scripts.Head != null) && (Model.Scripts.Head.Count() != 0))
残りのコードはありますか?