2017-06-03 19 views
1

@ Scripts.Renderと@ Styles.Renderをどこに配置するのか非常に混乱しています。理想的には、@RenderBody()の後ろにbodyセクション内に置かない限り、@ Scripts.Render( "〜/ bundles/bootstrap")などは予期しないことにすべて頭部セクション内に置くことになります。@ Scripts.Renderと@ Styles.Renderを配置する場所

@ Mvc.RazorTools.BundleManager.Styles.Render()と@RenderSection( "scripts"、必須:false)をどこに配置するかは同じです。

最終的な言葉は本当に感謝しています。

p.s.この質問にはもう一つの同様の答えがありますが、紛失したファイルには問題がなく、プレースメントではなく、唯一の類似点がタイトルにあります。また、その質問はスクリプトとスタイルの両方に対処しません。

bundles.Add(new ScriptBundle("~/bundles/bundlejquery").Include(
        "~/Scripts/jquery-1.12.4.js", 
        "~/Scripts/jquery-ui-1.12.1.js", 
        "~/Scripts/jquery.validate.min.js", 
        "~/Scripts/jquery.validate.unobtrusive.min.js")); 

bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include(
        "~/Scripts/bootstrap.js", 
        "~/Scripts/respond.js")); 
+1

[Scripts.Render for JQueryの配置先がわからない](https://stackoverflow.com/questions/29061873/not-sure-where-to-place-scripts-render-for-jquery) – Sankar

答えて

1

私はあなたのページのheadセクションにStyles.Render @あなたのを置くことをアドバイスします:完了のためにバンドルを追加する

。そうすることで、ページをレンダリングする前にすべてのCSSファイルが読み込まれるのを待つので、ブラウザがページをより速くレンダリングできるようになります。

また、ページ本体の終了タグの前に@ Scripts.Renderと入力してください。を入力することをお勧めします。そうすることで、ブラウザはUIを完全にレンダリングできます。スクリプトが実行されるたびに(WebワーカーとAjax呼び出しが免除される)、UIスレッドは停止します(これにより、シナリオによっては長時間実行されるスクリプトが発生することに注意してください)。

追加:すべての

<head> 
Render styles here 
</head> 
<body> 

    Render jQuery Scripts 
    Render Bootstrap Scripts 
</body> 
+0

これは、@ Scripts.Render( "〜/ bundle/bootstrap")が私の頭の部分で正しく動作しない理由を説明しています。ありがとう。 – Luke

+0

あなたは大歓迎です@Luke –

+0

もっと深い点検の後では、@ Scripts.Render( "〜/ bundles/bootstrap")は私の体のセクションに入って(回答ごとに)動かなければならないが、ScriptBundle( "〜/ bundles/bundlejquery ")は、私が頭のセクションに置かなければ動作しません。だから私はスクリプトの配置についての明確なルールについて混乱し続けています。 – Luke

0

まず、スクリプトやスタイルタグを入れてどこにヘッダに入れて完全に罰金ですので、あなたは、Styles.Render @とScripts.Render @置くことができます。おそらく、あなたがより多くの情報を提供するなら、それが助けになるかもしれない何か他のことが間違っているでしょう。 通常、@RenderSection( "scripts"、required:false)をマスターページ内に配置します(デフォルトの_layoutファイルのように)。マスターページに:次に、あなたがあなたのページに

@section script{ 
} 

を置くことができ、あなたは、このタグ内に置くコンテンツが@RenderSection(偽「スクリプト」、必要な)に置き換えられます。

注:@sectionを部分ページに配置することはできません。

関連する問題