私は静的ファイルで私のjavascriptのほとんどを縮小化の練習に取り組んでいますし、各ビューはこのような何かを持っていますレイアウトでビューモデルを直接取得する方法は?
順番にはJavaScriptの小さな、非静的、作品をレンダリング@section Script
{
@Html.Action("MinifyJavaScript", "Resource", new { viewPath = "~/Views/User/Register.Js.cshtml", model = Model })
}
以下のようなコード、:
@model UserRegisterModel
<script>
(function ($, b) {
$(function() {
b.views.user.register('@Url.Action("ValidateInput", "User")');
});
})(jQuery, bruttijjimo);
</script>
モデルと異なる部分だけを変更することができます(一般的に部分図として扱われる)ので、これは、私はより重くビューではJavaScriptをキャッシュすることができます今すぐ
私は…したい レイアウトセクションの必要性を取り除き、ビューの直後にjavascriptの部分ビュー(ビューと同じモデルに渡される)をレンダリングすることによって、このプラクティスをさらにアップグレードすることができます。私はすでにビューでjavascriptを圧縮するメソッドを作成しました。また、ビューのjavascriptが.js.cshtml
ファイル内にある必要があり、ビューとモデルを共有するという規約もあります。
私が必要とするのは、レイアウトからビューのモデルを取得し、ビューの名前も取得してレンダリングすることです。
これは、javascriptを出す必要がある場合に部分スクリプトがスクリプトマネージャを使用するため、実際のビューでのみ機能するか、または必要になります。
So:レイアウトからビューのモデルを取得するにはどうすればよいですか?残りの部分はわかりますが、これは私を逃しています。
これは要点ですが、私が持っているすべてのjavascriptは、別々のスクリプトファイルを1回呼び出すだけでした。そして今、私はその結合を取り除き、 "Controller" HTMLビュー自体でスクリプト行を参照する必要はありません。 – bevacqua
レイアウトのモデルであると仮定して、 '@ Model'を試したことさえありませんでした。 – bevacqua